在文本文件Cygwin中用cr-lf替换lf

时间:2012-02-13 23:36:48

标签: sed cygwin newline lf

我有一个Cygwin脚本,可以将文件输出到文件中。我唯一的问题是它总是使用\ n“lf”行结尾而不是\ r \ n“cr-lf”。我想要替换它们,或者只是让cygwin总是输出\ r \ n作为行结尾。

我在脚本中尝试了以下两个命令无效。

unix2dos d:/temp.txt
sed -i -e 's/\n/\r\n/g' d:/temp.txt

2 个答案:

答案 0 :(得分:1)

您的unix2dos电话应该有效。你得到某种错误吗?

Cygwin安装程序有一个选项可以选择默认行结束约定(DOS或Unix),虽然它可能只在新安装期间显示它 - 我不记得了。

答案 1 :(得分:0)

您使用奇怪的Windows和Linux文件结尾指定了unix2dos的路径。

如果您是从Windows命令shell调用它,请使用:

unix2dos d:\temp.txt

如果您是从Cygwin或Cygwin shell脚本或类似内容中调用它,请使用:

unix2dos /cygdrive/d/temp.txt