首页 > 其他 > 详细

find -exec 与 xargs的区别与使用

时间:2015-04-03 17:25:48      阅读:266      评论:0      收藏:0      [点我收藏+]

我一个项目的代码上线,是先checkout出代码然后整体copy过去的,可以避免在线上直接svn拉代码时候影响服务。
其中有这么两句:

find . -type d -name ".svn" | xargs rm -rf
find script/ -type f -exec dos2unix -o {} \;

感觉xargs和exec很像,就学习了一下两者的使用和区别。
-exec
1.参数是一个一个传递的,传递一个参数执行一次rm
2.文件名有空格等特殊字符也能处理
-xargs
1.一次将参数传给命令,但可以使用-n控制参数个数
2.处理特殊文件名需要采用如下方式,重点在那个-0上:
find . -name “*.txt” -print0 |xargs -0 rm {}

技巧: find -print0 与 xargs -0 的结合避免文件名有特殊字符如空格,引号等无法处理:
find . -name “*.txt” -print0 |xargs -0 rm {}

find -exec 与 xargs的区别与使用

原文:http://blog.csdn.net/linux4fun/article/details/44856615

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!