最近,我经常发现自己想要在另一个命令的输出上运行一些命令,该命令在几行上有输出.
例如,假设我有一个命令,它返回一个新行的每个文件路径,我想删除所有这些文件.
有没有可以帮我这么做的命令?
这听起来像你在寻找xargs
.从手册页:
xargs从标准输入读取参数,由空格分隔(可以使用双引号或单引号或反斜杠保护)或换行符,并使用任何初始参数执行命令(默认为/ bin/echo)一次或多次通过从标准输入读取的参数.
所以你可以这样做:
ls | grep -v '*.cpp' | xargs rm
Run Code Online (Sandbox Code Playgroud)
上面的命令将删除除*.cpp
文件之外的当前目录中的所有内容.
归档时间: |
|
查看次数: |
248 次 |
最近记录: |