Grep 和 xargs:文件名太长

Grep 和 xargs:文件名太长

我正在尝试删除所有文件不要从开始__。这

ls | grep -v "__" | xargs -0 rm

产量: File name too long。有什么帮助吗?

编辑:

ls | grep -v "__" | awk '{print("rm \42"$0"\42")}' | /bin/bash

解决了问题,但我想知道为什么第一个不正确。谢谢

答案1

取出-0参数,它将修复此问题。xargs-0的参数表示输入列表中的项目以空字符结尾。您没有这样做,而是传递了以字符结尾的行\n

相关内容