我需要 Gzip 来为我正在构建的网络服务器预压缩一些静态文件。我需要 gzip 的所有文件都将位于名为.cache
. 由于某些客户端可能不接受 gzip 压缩的响应,因此我希望在 gzip 压缩它们时保留所有原始文件。是否有任何命令可用于递归 gzip 文件.cache
夹中的文件,同时仍保留原始文件?如果在已经有 gzipped 文件的文件夹上运行此命令是否会 gzip gzipped 文件(那些已经带有 .gz 后缀的文件)?
当我们讨论 gzip 的主题时:我一直在寻找一种将文本输入 gzip 传递给 gzip 而不是文件的方法。我想出了在命令上后缀一个破折号(如gzip -c -
),但我不确定这是否有效或我如何使用它。谁能解释一下?
使用该选项-c
将结果输出到stdout
. gzip
中的所有文件.cache
:
for i in .cache/*; do gzip -c "$i" > "$i.gz"; done
Run Code Online (Sandbox Code Playgroud)
编辑:
要gzip
他们再次,而不是gzip
在gzip
编辑文件检查后缀:
for i in .cache/*; do [ "${i:(-3)}" == ".gz" ] || gzip -c "$i" > "$i.gz"; done
Run Code Online (Sandbox Code Playgroud)
所以只有没有结尾的文件.gz
才会被gzip
编辑。
归档时间: |
|
查看次数: |
1665 次 |
最近记录: |