一位同事向我展示了一种使用rm和xargs删除.txt中列出的文件名的好方法 - 但我不记得他做了什么.
我跑了
echo | xargs -a file.txt
Run Code Online (Sandbox Code Playgroud)
其中包含file.txt
1
2
3
4
Run Code Online (Sandbox Code Playgroud)
它打印出来了
1 2 3 4
Run Code Online (Sandbox Code Playgroud)
我的逻辑说
rm | xargs -a file.txt
Run Code Online (Sandbox Code Playgroud)
应删除我创建的标题为1和2以及3和4的文件.
但这不是我得到的行为.
我如何形成这个简单的命令?
我相信你想:
xargs -a file.txt rm
Run Code Online (Sandbox Code Playgroud)
xargs的最后一个参数应该是您希望它在文件中的所有项上运行的命令.
Lynch提出的解决方案也是有效的,与此相当.