我可以在命令行上用Windows行结尾替换Unix行结尾吗?

时间:2015-09-03 15:25:08

标签: windows command-line line-endings

我正在摆弄void sendTestMessage(UdpClient udpClient, UdpState udpState){ byte[] data = Encoding.UTF8.GetBytes("Hello World"); udpClient.BeginSend( data, data.Length, udpState.e, //IPEndPoint result =>{ messageSent = true; Debug.Log(string.Format("Message '{1}' Sent to {0}", udpState.e, Encoding.UTF8.GetString(data))); udpClient.EndSend(result); }, udpState); } 命令将mercurial消息存储在一个文件中,例如这个(为了便于阅读而破坏了行):

hg log

问题在于hg log --template "Rev. {rev} from {date|rfc822date}: \r\n-------------------------------------------- \r\n\t{desc|strip|fill68|tabindent}\r\n\r\n\r\n" > hglog.txt 过滤器在68个字符后打破了行。从理论上讲,因为这些换行符是Unix换行符,并且不会显示在记事本中。

有没有办法用fill68替换\n,通过另一个命令管道\r\n的输出?

我希望在自动VS后期构建脚本中运行此命令,因此我无法手动执行此操作。

1 个答案:

答案 0 :(得分:1)

在Windows中,您可以按指定的here调用MORE命令:

hg log ... | more /p > hglog.txt