私が構築しているWebサーバーのいくつかの静的ファイルを事前に圧縮するにはGzipが必要です。 gzipに必要なすべてのファイルは.cache
。一部のクライアントはgzip圧縮応答を許可しない可能性があるため、gzip圧縮中にすべての元のファイルを維持したいと思います。.cache
元のファイルを保持しながらフォルダ内のファイルを繰り返しgzipするために使用できるコマンドはありますか?すでにgzip圧縮ファイルを含むフォルダでこのコマンドを実行すると、gzip圧縮ファイル(すでに.gzサフィックスを持つファイル)はgzipに圧縮されますか?
gzipに関するトピックを扱っている間、私はgzipテキスト入力をファイルの代わりにgzipに渡す方法を探していました。コマンドにダッシュを追加する方法(例:)を見つけましたが、gzip -c -
これがうまくいくかどうか、どうやって使うのかわかりません。誰でもこれを説明できますか?
答え1
のすべてのファイル-c
に結果を出力するには、このオプションを使用しますstdout
。gzip
.cache
for i in .cache/*; do gzip -c "$i" > "$i.gz"; done
編集する:gzip
サフィックスを確認するgzip
ed ファイルの代わりに再確認してください。gzip
for i in .cache/*; do [ "${i:(-3)}" == ".gz" ] || gzip -c "$i" > "$i.gz"; done
したがって、で終わらないファイルのみが編集され.gz
ますgzip
。