標準出力を直接 gzip 圧縮する
-c オプション
コマンドの標準出力を直接gzipコマンドで圧縮するには-cオプションを指定して以下のようにする。
コマンド | gzip -c > 出力ファイル名.gz
例
echo "Hello, World!" | gzip -c > hello.gz
標準エラーも含めて gzip 圧縮する
上記コマンドでは標準エラーは含まれない。
標準エラーも含めてgzip圧縮するには2>&1で標準エラーを標準出力にリダイレクトする。
コマンド 2>&1 | gzip -c > 出力ファイル名.gz
追記する
既に存在するgzファイルに追記するには>>でリダイレクトすればよい。
コマンド | gzip -c >> 出力ファイル名.gz
tee コマンドを使って標準出力をファイルに保存しつつ gzip 圧縮する
teeコマンドを使って標準出力をファイルに保存しつつgzip圧縮するには以下のようにする。
コマンド | tee >(gzip -c > 出力ファイル名.gz)
例
seq 100 | tee >(gzip -c > numbers.gz)
標準エラーも含めてgzip圧縮する場合は以下のようにする。
コマンド 2>&1 | tee >(gzip -c > 出力ファイル名.gz)
新しめのシェルであれば|&を使って以下のようにも書ける。
コマンド |& tee >(gzip -c > 出力ファイル名.gz)
» 参考:teeコマンドで標準エラー出力もファイルに出力する
追記するには>>でリダイレクトすればよい。
コマンド | tee >(gzip -c >> 出力ファイル名.gz)
標準入力から直接 gzip 解凍する
-d オプション
gzipコマンドで圧縮されたファイルを標準出力に解凍するには-dオプションを指定して以下のようにする。
コマンド | gzip -d
例
cat hello.gz | gzip -d
zcat コマンド
zcatコマンドを使っても同様に解凍できる。
zcat hello.gz
macOSの場合はzcatコマンドの代わりにgzcatコマンドを使う。
gzcat hello.gz
\第一線のプログラマーの行動原理を学べる!/
