Cygwin64 - 命令无法按预期工作

时间:2016-05-16 15:54:19

标签: svn cygwin

以下命令字符串在Cygwin32中正常运行,但在Cygwin64下不再有效。有没有人知道为什么?所有包都按预期安装。

$svn status | sort | cut -c2- | xargs cksum

: No such file or directory

我在Windows 7 x64上运行

1 个答案:

答案 0 :(得分:0)

这种错误通常是由具有Windows样式行结尾的脚本引起的。

在Unix中,在Cygwin下,行的结尾由单个LF字符表示。在Windows中,它由CR LF对指示。外壳不识别CR(回车)字符作为行尾标记;这只是另一个角色。

因此,如果您的脚本有如下行:

some_command

shell会将其视为

some_commandCR

其中CR表示返回字符。它将打印一条错误消息,如:

some_commandCR: command not found

其中,因为打印回车符将光标发送回行的开头,将显示为:

: command not found

这不是完全您收到的错误消息,但根本原因是相同的。

您可以使用dos2unix命令修复行结尾。请务必先阅读该手册页。与大多数Unix命令不同,它会替换其输入文件,而不是将过滤后的输出写入stdout。