![删除管道提供的文件](https://linux22.com/image/749/%E5%88%A0%E9%99%A4%E7%AE%A1%E9%81%93%E6%8F%90%E4%BE%9B%E7%9A%84%E6%96%87%E4%BB%B6.png)
我有这个命令链:
find . -print | grep php | xargs grep 'eval' -sl | xargs wc -l | grep ' [1-2][0-9] '
这为我提供了这个输出:
14 ./includes/js/calendar/lang/vgju.php
18 ./includes/phpInputFilter/default.php
14 ./includes/Archive/eula.php
18 ./media/system/js/json.php
该文件是受感染的 php 文件,我想用我的链将其删除。我该怎么做?
答案1
尽管您可能可以使用 find 命令完成这一切,但您只能尝试附加|xargs rm -f
到该命令。
这是它的样子
find . -print | grep php | xargs grep 'eval' -sl | \
xargs wc -l | grep ' [1-2][0-9] ' | \
cut -f 2 -d ' ' | xargs rm -f
请注意,该xargs rm
命令在这里起作用,因为您知道文件名中没有任何特殊字符。如果文件名中可能有空格,则可以使用xargs -d '\n' rm -f
(仅限 Linux)。