bash - 不以“.gz”结尾的 gzip 文件
bash - gzip files that are not ending in ".gz"
如何 gzip 目录中的文件,同时跳过已经 gzip 的文件而不出现错误或警告消息?
我已经尝试过 gzip *
和 ls | grep -v gz | xargs gzip
但它们会发出有关已压缩文件的警告消息。
使用扩展的 globbing:
shopt -s extglob
gzip !(*.gz)
...或者,如果您需要能够递归到子目录,find
:
find . -type f ! -name '*.gz' -exec gzip -- {} +
如何 gzip 目录中的文件,同时跳过已经 gzip 的文件而不出现错误或警告消息?
我已经尝试过 gzip *
和 ls | grep -v gz | xargs gzip
但它们会发出有关已压缩文件的警告消息。
使用扩展的 globbing:
shopt -s extglob
gzip !(*.gz)
...或者,如果您需要能够递归到子目录,find
:
find . -type f ! -name '*.gz' -exec gzip -- {} +