【发布时间】:2020-11-09 17:12:14
【问题描述】:
我如何在目录中压缩文件,同时跳过已经压缩过的文件而不会出现错误或警告消息?
我已经尝试过gzip *、ls | grep -v gz | xargs gzip ,但它们会抛出有关已压缩文件的警告消息。
【问题讨论】:
-
请注意,更多关于 UNIX 工具的通用用途而非软件开发的问题通常更适合我们的姊妹网站Unix & Linux。
我如何在目录中压缩文件,同时跳过已经压缩过的文件而不会出现错误或警告消息?
我已经尝试过gzip *、ls | grep -v gz | xargs gzip ,但它们会抛出有关已压缩文件的警告消息。
【问题讨论】:
使用扩展通配符:
shopt -s extglob
gzip !(*.gz)
...或者,如果您需要能够递归到子目录,find:
find . -type f ! -name '*.gz' -exec gzip -- {} +
【讨论】: