find -print0和xargs -0搭配使用

应用场景

xargs命令默认将空格作为分隔符,如果文件名中与空格,比如说一个名为shyn q的文件。xargs命令会识别为shynq两个参数,这样执行就会出问题。
find -print0和xargs -0搭配使用可以避免这个问题。
例如使用find -print0和xargs -0搭配删除shynshyn q两个文件

[root@localhost tmp]# find . -name "shyn*" -print0 |xargs -0 -t rm
rm ./shyn ./shyn q
[root@localhost tmp]# 

find -print0

find -print0表示在find的每一个结果之后加一个NULL字符,而不是默认加一个换行符。find的默认在每一个结果后加一个'\n',所以输出结果是一行一行的。当使用了-print0之后,就变成一行了

[root@localhost tmp]# find . -name "shyn*"
./shyn
./shyn q
[root@localhost tmp]# find . -name "shyn*" -print0
./shyn./shyn q
[root@localhost tmp]#

xargs -0

xargs -0表示xargs用NULL来作为分隔符

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值