定位到 rm 的管道结果

Bob*_*bby 11 bash gnome-terminal rm

我试过跑步

locate *.orig | xargs rm
Run Code Online (Sandbox Code Playgroud)

但它说 No such file or directory

我已经看到了这样做的方法,find但是 locate 返回对象的完整路径,所以它应该是可能的

enz*_*tib 23

如果文件名包含空格,您应该使用

locate -0 $something | xargs -0 rm
Run Code Online (Sandbox Code Playgroud)

locate手册页

-0,--null使用 ASCII NUL 字符分隔输出中的条目,而不是将每个条目写在单独的行上。此选项旨在与 GNU xargs(1) 的 --null 选项进行互操作。

或者

locate $something | while read f; do rm "$f"; done
Run Code Online (Sandbox Code Playgroud)

此外,您应该*.orig用引号保护,以避免 shell 扩展,并将其传递给 locate untouched。