Linux 如何显示压缩文件的名称
以下命令将以.log结尾的所有文件压缩到特定大小Linux 如何显示压缩文件的名称,linux,unix,Linux,Unix,以下命令将以.log结尾的所有文件压缩到特定大小 sudo find / -xdev -type f -size +100000 -name "*.log" -exec gzip {} 但是我如何获得它的输出以显示压缩文件的名称呢 我尝试了下面的命令,但没有成功 sudo find / -xdev -type f -size +100000 -name "*.log" -exec gzip -v {} | |awk '{print $6}' \; 这是因为如果对gzip使用-v选项,则会有
sudo find / -xdev -type f -size +100000 -name "*.log" -exec gzip {}
但是我如何获得它的输出以显示压缩文件的名称呢
我尝试了下面的命令,但没有成功
sudo find / -xdev -type f -size +100000 -name "*.log" -exec gzip -v {} | |awk '{print $6}' \;
这是因为如果对gzip使用-v选项,则会有一个字段返回压缩文件的名称。这将显示压缩文件的名称:
sudo find / -xdev -type f -size +100000 -name "*.log" -exec gzip -v {} \; 2>&1 | awk '{print $6}'
这将显示gzip的输出:
sudo find / -xdev -type f -size +100000 -name "*.log" -exec gzip -v {} \;
这将显示原始文件:
sudo find / -xdev -type f -size +100000 -name "*.log" -exec gzip {} \; -exec echo {} \;
如果我去掉2>&1,只做sudo find/-xdev-type f-size+100000-name*.log-exec gzip-v{}\,为什么需要重定向错误awk'{print$6}',它会打印整个内容,为什么重定向错误会阻止它呢?gzip-v会将输出打印到stderr,因为它支持将压缩文件重定向到stdout。如果它还将-v信息写入标准输出,它将使标准输出无效。