インターネットから.Zipファイルをダウンロードしました。ターミナルを使用してファイルを解凍したい。これを行う正しい方法は何ですか?
unzip
コマンドがシステムにまだインストールされていない場合は、次を実行します。
Sudo apt-get install unzip
解凍ユーティリティをインストールした後、特定の宛先フォルダに抽出する場合は、次を使用できます。
unzip file.Zip -d destination_folder
コピー元とコピー先のディレクトリが同じ場合、次の操作を実行できます。
unzip file.Zip
単にunzip
を使用できます。
インストールしてください:
apt-get install unzip
そしてそれを使用します:
cd /path/to/file
unzip file.Zip
より便利なツールは7z
です。これは、さまざまな圧縮形式、特にlzma
(通常は最高の圧縮率を提供するプロトコル)を圧縮および解凍します。
このコマンドは、7z
をインストールします。
Sudo apt-get install p7Zip-full
このコマンドは、Zipの内容をリストします。
7z l zipfile.Zip
次のコマンドは、Zipの内容を抽出します。
7z x zipfile.Zip
次を使用できます。
unzip file.Zip -d somedir
yourpath/somedir
に抽出する
絶対パスに抽出する場合は、使用します
Sudo unzip file.Zip -d /somedir
ここでの多くの回答は、インストールが必要なツールについて言及していますが、Ubuntuのスクリプト言語の2つであるPerlとPythonには、Zipアーカイブを解凍するために必要なすべてのモジュールがすでに付属しているため、何もインストールする必要はありませんその他。以下の2つのスクリプトのいずれかを使用してジョブを実行します。それらはかなり短く、必要に応じて1行のコマンドにまとめることもできます。
#!/usr/bin/env python3
import sys
from zipfile import PyZipFile
for Zip_file in sys.argv[1:]:
pzf = PyZipFile(Zip_file)
pzf.extractall()
使用法:
./pyunzip.py master.Zip
または
python3 pyunzip.py master.Zip
#!/usr/bin/env Perl
use Archive::Extract;
foreach my $filepath (@ARGV){
my $archive = Archive::Extract->new( archive => $filepath );
$archive->extract;
}
使用法:
./perlunzip master.Zip
または
Perl perlunzip.pl master.Zip
こちらもご覧ください
コピー元とコピー先のディレクトリが同じ場合、次の操作を実行できます。
unzip filename.Zip
bsdtar
/unzip
よりZip
の方が好きです。抽出については、かなり似ています。
bsdtar -x -f /one/two/three/four.Zip -C /five
unzip /one/two/three/four.Zip -d /five
ただし、zipでは、bsdtar
が優先されます。この入力があるとします:
/one/two/three/alfa/four.txt
/one/two/three/bravo/four.txt
zipファイルにこれが必要です。
alfa/four.txt
bravo/four.txt
これはbsdtar
で簡単です:
bsdtar -a -c -f four.Zip -C /one/two/three alfa bravo
Zipには、unzipのような-d
オプションがないため、最初にcd
を使用しない限り、上記を達成する方法はありません。
私が役に立つと思うオプションの詳細な説明は次のとおりです。
コマンド:unzip-[option] Zip-path。 -dファイルを抽出するオプションのディレクトリ -lアーカイブファイルを一覧表示します。 -P パスワード つかいます パスワード 暗号化されたzipfileエントリ(ある場合)を復号化します。 -t巡回冗長検査でアーカイブファイルをテストします。 -u既存のファイルを更新します。 -zアーカイブコメント
Unzipのインストール=============したがって、まず、システムにunzipがインストールされていない場合はインストールする必要があります。 unzipコマンドは、Zipアーカイブからファイルを抽出するために使用されます。
次のコマンドを実行して
unzip
をインストールしますSudo apt-get install unzip
unzip
Syntex$ unzip [-aCcfjLlnopqtuvy] [-d dir] zipfile
次の手順に従ってください:
UnZipファイル
オプション1– Zipファイルが端末と同じディレクトリ/フォルダにあり、現在の作業ディレクトリに抽出する場合。
上記のシナリオを達成するには、次のコマンドを使用します
Sudo unzip Zip_file_name.Zip
zipファイルが何らかのパスワードで保護されている場合は、次のコマンドを使用します。
Sudo ubzip -P Zip_file_name.Zip
異なるオプションがあるため、-pではなく-P(大文字のP)を使用してください。
オプション2– Zipファイルが同じディレクトリに存在せず、別のディレクトリでファイルを抽出/解凍したい場合。
上記のシナリオを達成するには、次のコマンドを使用します
Sudo unzip path/filename.Zip -d another_path_or_same_path
オプション-dを使用しない場合、ファイルは作業ディレクトリを表示するために抽出されます。
また、Zipファイルがパスワードで保護されている場合は、
-P
も使用できます。linux/Unixでtarコマンドを使用
tar
はTape Archiveの頭字語です。 tarコマンドは、Linux/Unixのアーカイブを操作するために使用されます。システム管理者はtarコマンドを頻繁に使用して、tarball
またはtar
、bzip
、_gzip
inLinux/Unixシステム。tar Syntex
tar [OPTION...] [FILE]...
または
tar必須フラグ
tar {-r|-t|-c|-x|-u}
tarオプションのフラグ
tar {one of the required Flags} [ -d ][-B] [ -F ] [ -E ] [ -i ] [-h ] [ -l ] [ -m ] [ -o ] [ -p ] [ -w] [ -s ] [ -U ] [ -v ] [-Number] [-b Blocks] [-f Archive]
例
ディレクトリまたは単一のファイルを圧縮してtarアーカイブファイルを作成する
以下の端末コマンドは、現在の作業ディレクトリに
.tar
またはsample_dir.tar
というディレクトリを持つ/home/codebind/sample_dir
というsample_dir
ファイルを作成します。ripon@ripon:~$ tar -cvf sample_dir.tar sample_dir sample_dir/ sample_dir/main.cpp sample_dir/sample.png sample_dir/output ripon@ripon:~$ ls sample_dir sample_dir.tar
これらのフラグ(-cvf)の実際の意味は次のとおりです
-c, --create
–新しいアーカイブを作成
-x, --extract, --get
–アーカイブからファイルを抽出する
-f, --file ARCHIVE
–アーカイブファイルまたはデバイスのアーカイブを使用ディレクトリまたは単一ファイルを圧縮して
tar.gz
またはtgz
アーカイブファイルを作成する以下の端末コマンドは、現在の作業ディレクトリに
.tar.gz
またはsample_dir.tar.gz
というディレクトリを持つ/home/codebind/sample_dir
というsample_dir
ファイルを作成します。コマンドに追加のフラグ-zが追加されていることに注意してください。フラグ-zの実際の意味は次のとおりです。
-z, --gzip, --gunzip --ungzip
– gzipでアーカイブを圧縮しますripon@ripon:~$ tar -cvzf sample_dir.tar.gz sample_dirsample_dir/ sample_dir/main.cpp sample_dir/sample.png sample_dir/output ripon@ripon:~$ ls sample_dir sample_dir.tar.gz
次のコマンドは、.tgzファイルを作成します。これに気付くのは、tar.gzとtgzの両方が似ていることです。
ripon@ripon:~$ tar -cvzf sample_dir.tgz sample_dirsample_dir/ sample_dir/main.cpp sample_dir/sample.png sample_dir/output ripon@ripon:~$ ls sample_dir sample_dir.tgz
複数のディレクトリまたはファイルを一度に圧縮する
たとえば、
sample_dir
ディレクトリ、Java_test
ディレクトリ、およびabc.py
ファイルをsample_dir.tar.gz
というtarファイルに圧縮するとします。上記の目標を達成するには、次のコマンドを実行します。
ripon@ripon:~$ tar -cvzf sample_dir.tar.gz sample_dir Java_test abc.py sample_dir/ sample_dir/main.cpp sample_dir/sample.png sample_dir/output Java_test/ Java_test/HelloCV.Java abc.py ripon@ripon:~$ ls sample_dir Java_test abc.py sample_dir.tar.gz
ディレクトリまたは単一ファイルを圧縮して
.bzip2
アーカイブファイルを作成するripon@ripon:~$ tar -cjvf sample_dir.tar.bz2 sample_dir sample_dir/ sample_dir/main.cpp sample_dir/sample.png sample_dir/output ripon@ripon:~$
フラグ
-f
がコマンドに追加されていることに注意してください。フラグ-f
の実際の意味は次のとおりです。
-f, --file ARCHIVE
–アーカイブファイルまたはデバイスのアーカイブを使用
.tar
アーカイブファイルを抽出Tarコマンドを使用して、圧縮ファイルを抽出またはuntarできます。以下のコマンドは、
sample_dir.tar
の内容を現在のディレクトリに抽出します。ripon@ripon:~$ tar -xvf sample_dir.tar sample_dir/ sample_dir/main.cpp sample_dir/sample.png sample_dir/output ripon@ripon:~$
次のコマンドは、指定されたディレクトリ、つまりこの場合は
/home/codebind/dir_name
内のファイルを抽出または展開します。ripon@ripon:~$ tar -xvf sample_dir.tar -C /home/codebind/dir_name sample_dir/ sample_dir/main.cpp sample_dir/sample.png sample_dir/output ripon@ripon:~$
フラグ
-C
をコマンドに追加しました。フラグ-C
の実際の意味は次のとおりです。
-C, --directory DIR
–ディレクトリDIRに変更します