gpt4 book ai didi

linux - 关于find命令中xargs的使用

转载 作者:太空宇宙 更新时间:2023-11-04 09:06:06 25 4
gpt4 key购买 nike

我有一种情况需要选择所有具有 aliencoders.numeric-digits 的文件像 alienoders.1206并且 find 命令也应该搜索所有子目录。如果没有这样的文件,它不应该做任何事情。

我写道:

find /home/jassi/ -name "aliencoders.[0-9]+" | xargs ls -lrt | awk print '$9'

如果没有这样的文件以 aliencoders.xx 开头,它会说没有这样的文件或目录......

我怎样才能绕过这个错误。我必须为几个这样的目录运行它,它应该只为那些存在这种文件模式的目录提供输出,否则没有警告并且不执行 xargs 等内容。

目前,如果不存在这样的文件,那么它正在寻找当前目录而不是/home/jassi

最佳答案

如果您不希望 xargs 在输入为空时执行,您可以使用 -r--no-run-if-emptyman 中指出的 GNU 扩展页。所以如果你有这样的支持,你可以试试
找到/home/jassi/-name "aliencoders.[0-9]+"| xargs -r ls -lrt | awk '{print $9}'
或者,您可以使用 exec 选项和 find 在这些行上实现此目的
找到/home/jassi/-name "aliencoders.[0-9]+"-exec ls -lrt {} + | awk '{print $9}'
希望这对您有所帮助!

关于linux - 关于find命令中xargs的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11087840/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com