考虑以下命令:
ls /mydir/*.txt | xargs chown root
其目的是将mydir
中所有文本文件的所有者更改为root
问题是,如果在mydir
中没有.txt
文件,那么xargs会显示一个错误,说没有指定路径。这是一个无害的例子,因为会抛出一个错误,但在某些情况下,比如在我需要在这里使用的脚本中,会假设一个空白路径是当前目录。因此,如果我从/home/tom/
运行该命令,那么如果ls /mydir/*.txt
没有结果,并且/home/tom/
下的所有文件都将其所有者更改为root。
如何让xargs忽略空结果呢?