zip圧縮ファイルがある場合は、Linuxコマンドラインで解凍できます。 Linuxのunzipコマンドは非常に用途が広く、zipファイルを抽出するだけでなく多くのことを実行できます。
Linuxでフォルダをgzipで圧縮する方法については過去に説明しました。 unzipコマンドのさまざまな使用法を見てみましょう。その前に、unzipがシステムにインストールされていることを確認してください。ディストリビューションのパッケージマネージャーを使用して、コマンドをインストールできます。
UbuntuとDebianでは、次のコマンドを使用できます:
sudo apt install unzip
それを確認したら、Linuxターミナルでunzipを使用する方法を見てみましょう。
Linuxでコマンドを解凍
unzipコマンドの構文は非常に単純です:
unzip [option] zip_file
これを使用してオプションなしでzipファイルを抽出すると、現在のディレクトリ内のすべてのファイルが抽出されます。
unzip webdesign.zip
Archive: webdesign.zip
inflating: 339252-PAJF05-394.ai
inflating: 339252-PAJF07-322.eps
inflating: 339252-PALBTI-224.ai
inflating: 339252-PALBTL-394.eps
inflating: 339252-PALBTM-53.jpg
inflating: License free.txt
inflating: License premium.txt
そして、それはあなたがほとんどの場合望んでいることではありません。抽出されたすべてのファイルで現在のディレクトリがいっぱいになります。
ls
339252-PAJF05-394.ai 339252-PALBTI-224.ai 339252-PALBTM-53.jpg 'License premium.txt'
339252-PAJF07-322.eps 339252-PALBTL-394.eps 'License free.txt' webdesign.zip
1。ディレクトリに解凍します
予想される動作は、ファイルを特定のディレクトリ(通常はzipファイルと同じ名前)に抽出する必要があることです。
ファイルを抽出するターゲットディレクトリを指定できます。
unzip -d target_directory zip_file
ターゲットディレクトリが存在しない場合は、作成されます。ただし、この方法でネストされたディレクトリを作成することはできません。
ターゲットディレクトリを最後に配置することもできますが、すべてのオプションを最後に追加できるわけではないことに注意してください。
unzip zip_file -d target_directory
2。解凍せずにzipファイルの内容を表示する
zipファイルの内容を確認したい場合は、必ずしも最初に解凍する必要はありません。 -l
を使用できます オプションを選択すると、zipファイルの内容が表示されます。
unzip -l zip_file
ご覧のとおり、ファイルのタイムスタンプと個々のファイルの実際のサイズもバイト単位で表示されます。
[email protected]:$ unzip -l webdesign.zip
Archive: webdesign.zip
Length Date Time Name
--------- ---------- ----- ----
205358 2018-06-18 23:14 339252-PAJF05-394.ai
996906 2018-06-18 23:14 339252-PAJF07-322.eps
213968 2018-06-20 00:00 339252-PALBTI-224.ai
1005362 2018-06-20 00:00 339252-PALBTL-394.eps
305531 2018-06-20 00:00 339252-PALBTM-53.jpg
1462 2018-06-20 09:45 License free.txt
1116 2018-06-20 09:45 License premium.txt
--------- -------
2729703 7 files
必要に応じて、-v
で冗長モードを使用することにより、圧縮サイズ、圧縮率などの詳細情報を取得できます。 オプション。出力のCRC-32は巡回冗長検査です。
[email protected]:$ unzip -v webdesign.zip
Archive: webdesign.zip
Length Method Size Cmpr Date Time CRC-32 Name
-------- ------ ------- ---- ---------- ----- -------- ----
205358 Defl:N 142097 31% 2018-06-18 23:14 792f2380 339252-PAJF05-394.ai
996906 Defl:N 221228 78% 2018-06-18 23:14 440390d3 339252-PAJF07-322.eps
213968 Defl:N 147568 31% 2018-06-20 00:00 cdb64dfc 339252-PALBTI-224.ai
1005362 Defl:N 226727 77% 2018-06-20 00:00 aed3d97a 339252-PALBTL-394.eps
305531 Defl:N 183363 40% 2018-06-20 00:00 e4ced90f 339252-PALBTM-53.jpg
1462 Defl:N 728 50% 2018-06-20 09:45 0eb9e17b License free.txt
1116 Defl:N 558 50% 2018-06-20 09:45 165dd84e License premium.txt
-------- ------- --- -------
2729703 922269 66% 7 files
3。プロンプトを表示せずにすべてのファイルを上書きします
ファイルを抽出するディレクトリに同じ名前のファイルがすでに存在する場合は、そのようなファイルごとに昇格されます。オプション-o
を使用して、すべてのファイルを強制的に上書きできます。 。
unzip -o -d target_directory zip_file
4。ファイルを上書きしないでください-n
既存のファイルを新しく抽出したファイルで上書きしたくない場合は、-nオプションを使用します(上書きしないことを意味します)。
unzip -n -d target_directory zip_file
5。ファイルを更新し、必要に応じて作成します
これは、すべてのファイルの上書きとは少し異なります。この場合、既存のファイルよりも新しいタイムスタンプを持つファイルのみが上書きされます。ファイルが存在しない場合は作成されます。
オプション-u:
でそれを達成できますunzip -u -d target_directory zip_file
6。既存のファイルを更新しますが、作成しません
ここで前の例から少し変更します。これでは、タイムスタンプが古い場合は既存のファイルを更新しますが、存在しない場合でも新しいファイルは作成されません。
オプション-fを使用すると、次のことが可能になります。
unzip -f -d target_directory zip_file
7。クワイエットモードで抽出
ファイルを解凍すると、抽出されたすべてのファイルがディスプレイに表示されます。ここで、数百のファイルが含まれているzipファイルを想像してみてください。抽出すると、画面が乱雑になります。
オプション-q
でクワイエットモードを使用できます ディスプレイには何も表示されません:
unzip -q -d target_directory zip_file
8。抽出からファイルを除外する
特定のファイルまたは特定の種類のファイルを抽出から除外することもできます。
unzip zip_file -x file_to_exclude
私の例では、.epsファイルを抽出したくないとしましょう。
[email protected]:$ unzip webdesign.zip -x *.eps
Archive: webdesign.zip
inflating: 339252-PAJF05-394.ai
inflating: 339252-PALBTI-224.ai
inflating: 339252-PALBTM-53.jpg
inflating: License free.txt
inflating: License premium.txt
これらは、Linuxでのunzipコマンドの最も一般的な例の一部です。その他のオプションについては、いつでもマニュアルページを確認できます。
頻繁に解凍する他のオプションを使用していますか?コメントで共有してみませんか?