场景:
要删除~/logs/rocketmqlogs/下的所有(或符合grep的)日志,利用管道符和 xargs 删除,因为rm不支持stdin标准输入,只接受命令行参数,则需要用到xargs。xargs可以读入stdin的数据,并且以空格符或断行字符进行分辨,将stdin的数据分隔成为arguments。
运行xargs --help 后查看 -i选项解释:
-i,--replace=[R] Replace R in initial arguments with names
read from standard input. If R is
unspecified, assume {}
ls ~/logs/rocketmqlogs/ | xargs -i rm ~/logs/rocketmqlogs/{}