どーも!marusukeです!
ファイルの圧縮・解凍を行うLinuxコマンド:gzipについて解説します!
gzipコマンドの使い方
元のファイルを残さずにファイルを圧縮する
testファイルを圧縮するとき(元のtestファイルは削除され、圧縮されたtest.gzが作成されます)
gzip test
実行結果です

元のファイルのtestファイルは削除され、圧縮されたファイルtest.gzのみが残ります
元のファイルを残しつつ、ファイルを圧縮する(-kオプション)
元のファイルを残すときは、-k(–keep)オプションをつけます
gzip -k test
実行すると以下のようになります

testファイルと圧縮されたtest.gzがディレクトリ内に存在する状態になります
ディレクトリ内の全てのファイルを圧縮する(-rオプション)
sampleディレクトリ内の全てのファイルを圧縮する場合には、-rオプションをつけます
gzip -r sample
sampleディレクトリ内にはfile1, file2, file3がある場合、実行すると以下のようになります

sampleディレクトリ内のファイルは全て圧縮され、元ファイルはない状態になります
圧縮したファイルを別のディレクトリに展開する方法
展開するオプション「-d」と、標準出力に実行結果を出力するオプション「-c」を使います
以下の場合は、カレントディレクトリ内のtest.gzをカレントディレクトリ配下のsampleディレクトリ内にtestファイルとして展開するコマンドです
gzip -dc test.gz > sample/test
実行すると以下のようになります

test.gzを展開し、testファイルとしてsampleディレクトリ内に配置することができました
このとき、展開元のファイルtest.gzもカレントディレクトリ内に残ったままとなります
gzipコマンドのオプション
コマンドのオプションです
gzip
-c,--stdout: 標準出力に書き込み、元のファイルを変更せずに保持します-d,--decompress: 解凍します-f,--force: 出力ファイルを強制的に上書きし、リンクも圧縮します-h,--help: ヘルプを表示します-k,--keep: 入力ファイルを保持して削除しません-l,--list: 圧縮されたファイルの内容を表示します-L, --license: ソフトウェアのライセンスを表示します-n, --no-name: 元の名前とタイムスタンプを保存または復元しません-N, --name: 元の名前とタイムスタンプを保存または復元します-q, --quiet: すべての警告を抑制します-r, --recursive: ディレクトリ内で再帰的に操作します--rsyncable: rsyncに対応したアーカイブを作成します-S, --suffix[.拡張子]: 圧縮ファイルに指定した拡張子を使用します--synchronous: 同期出力(システムがクラッシュしても元ファイルは残りますが、処理は遅いです)-t, --test: 圧縮ファイルの整合性をテストします-v, --verbose: 圧縮実行時の詳細を表示します-V, --version: バージョン番号を表示します-1,-2, …,-9: 圧縮率を設定します。-1が最速で低圧縮率、-9が最遅で高圧縮率です
以上となります!
ここまで読んでいただきありがとうございました!


コメント