来自标准输入的 gunzip

Mat*_*ock 3 shell gzip

我有大量的 gz 文件。我想把它们全部提取出来。这是我试图做的:

find . | grep .gz | gunzip

但是,gunzip 不接受来自 stdinput 的文件列表。我怎样才能把它们全部解压(就地)?

dha*_*hag 6

如果您要调用gunzip名称以.gz当前目录中任何位置结尾的每个文件,则应该这样做:

find . -type f -name '*.gz' exec gunzip {} +
Run Code Online (Sandbox Code Playgroud)

将标准输入上的内容转换为命令参数的更通用方法是使用 xargs,但该命令有一些需要注意的问题。