我有一些在Windows上创build的shell脚本,我想在它们上运行Dos2Unix 。
但是正如我所读到的, Dos2Unix在Linux环境下工作,所以在Windows中工作时,我可以将文件转换为UNIX格式吗?
我已经安装了CYGWIN,但是我遇到了一些问题
pipe理员@ SGH735082N〜 $ pwd /家/pipe理员 pipe理员@ SGH735082N〜 $ cd C:\ CVS代码 pipe理员@ SGH735082N / cygdrive / c / CVS $ dos2Unix BLPDB000 BLPDB000: dos2Unix处理BLPDB000:没有这样的文件或目录 pipe理员@ SGH735082N / cygdrive / c / CVS $ dos2Unix -h dos2Unix:错误的参数-h:未知的选项 pipe理员@ SGH735082N / cygdrive / c / CVS $ dos2Unix --help dos2Unix版本0.1.3 转换来自文本文件的行尾 DOS样式(0x0d 0x0a)到UNIX样式(0x0a) 用法:dos2Unix [OPTION ...] [input文件列表...] 主要选项(并非全部适用) -A,--auto输出格式将与自动检测源相反 格式 -D, - u2d输出将采用DOS格式 --unix2dos输出将采用DOS格式 -U,--d2u输出将是UNIX格式 --dos2unix输出将是UNIX格式 --force忽略二进制文件检测 - 安全不要修改二进制文件 帮助选项 - ?, - 帮助显示帮助信息 - 使用显示简短的使用信息 - 版本显示版本信息 - 许可显示许可信息 其他论点 每个文件列出的[input文件列表...],就地转换。 如果没有指定,则使用标准input/标准输出 pipe理员@ SGH735082N / cygdrive / c / CVS $ pipe理员@ SGH735082N / cygdrive / c / CVS $ dos2Unix -oBLPDB000 dos2Unix:错误的参数-oBLPDB000:未知的选项 pipe理员@ SGH735082N / cygdrive / c / CVS $ dos2Unix -k BLPDB000 dos2Unix:错误的参数-k:未知的选项 pipe理员@ SGH735082N / cygdrive / c / CVS $ dos2Unix BLPDB000.txt BLPDB000.txt: dos2Unix处理BLPDB000.txt:没有这样的文件或目录 pipe理员@ SGH735082N / cygdrive / c / CVS $ pwd / cygdrive / C / CVS
谢谢
如果你安装了perl
,你可以简单地运行:
perl -i -p -e "s/\r//" <filename> [<filename2> ...]
至少有两个资源:
Cygwin上使用的是一个非常古老的dos2unix版本。 Cygwin 1.7更改为dos2unix的新版本,与大多数Linux发行版一样,大约两年前。 所以用Cygwin的安装程序更新你的dos2unix。 检查你得到版本6.0.3。
还有可用的dos2unix的原生Windows端口(win32和win64)。 请参阅http://waterlan.home.xs4all.nl/dos2unix.html
问候,
您可以使用Notepad ++ 。
递归转换目录的说明如下: