Fork me on GitHub 返回顶部

递归查找删除(find+管道+xargs+rm)

学习原因

今天我的编辑器突然坏了,它创建了好多文件名最后带了'~'的不用的文件。
如果这是同一个目录下的就好办了,但这是好多目录里的,就很烦了。

具体过程

百度一下,学习了管道命令的用法,发现

find -name \*~ | rm

解释一下:
前面的

find -name \*~

就是找到所有的名字末尾是'~'的文件名。
"|" 就是管道命令,
其作用就是:将前一个命令的输出当作后一个命令的输入
至于"rm",相信大家都会。

但这样是错的,因为管道只是将输出当作输入,但"rm"命令需要的参数
此时通过询问,得知"| xargs"就是将输入当作参数
于是,修改命令,可以得到:

find -name \*~ | xargs rm

这样,问题就解决了。

posted @ 2020-04-16 15:27  tacmon  阅读(1470)  评论(0编辑  收藏  举报