dos2unix批量转换的一种方法

来源:互联网 发布:如何注册淘宝海外买手 编辑:程序博客网 时间:2024/05/22 12:44

Linux本身提供了dos2unix和unix2dos两个命令来实现Windows和Linux文件的转换。

少量文件转换:

对于单个或少量的文件转换,可以直接使用命令,如:

dos2unix filename1, filename2

大量文件转换:

当需要转换的文件非常多的时候,使用上述方式书写起来非常麻烦;还有就是当参数过长的时候,dos2unix命令可能会出现参数过长,无法解析的错误(一般情况下不会发生这种错误,可以使用“getconf ARG_MAX”命令查看参数的最大长度)。这时就用到了exec命令。exec命令可以把批量的参数拆分为一个一个的参数,多次执行exec之后的命令。如将/apps/cws目录下的所有的以.sh结尾的文件批量转换:

find /apps/cws -name "*.sh" -exec dos2unix {} \;       (注意:一定要有{},标示参数;以“\;”结尾; {} 和\之间一定要有一个空格)
也可以使用xargs命令,不过xargs命令需要和管道符结合使用,并且xargs命令将所有的传入的数据当作一个参数处理。
find /apps/cws -name "*.sh" | xargs dos2unix

关于exec和xargs命令,请参考我的另一篇博客: 

linux中exec和xargs命令的区别和优劣分析


find参考:http://www.jb51.net/os/RedHat/1307.html


最近工作好忙,博客都没有时间写了。。。。。。

0 0
原创粉丝点击