【发布时间】:2017-02-06 16:08:25
【问题描述】:
我有以下问题:
当我运行一个以 CR+LF 行结尾存储的 shell 脚本时,我收到以下错误:
myscript.sh: line 1: cd: $'somedir\\someotherdir\r': No such file or directory
我已经研究过这个问题,有一个 Cygwin shell 的解决方案,找到here:
- 创建 .bashrc 文件
-
把这个放进去:
export SHELLOPTS set -o igncr - 重新加载 Cygwin shell
但是,我使用Cmder,我想在其中应用它。但是我不知道怎么做。正如here 所指出的,Cygwin 曾经有一个选项可以在安装过程中将使用 DOS 文件结尾设置为默认设置,但后来取消了它(不知道为什么)。
最奇怪的是,我在旧电脑上也有相同的设置,也是 Windows 10,一切正常,即使是 CRLF 结尾......
【问题讨论】:
-
错误的问题。在 cygwin 上使用 LF 结尾,否则某些东西总是会在某些包中分解。
-
好的,但是你如何解释在旧电脑上一切正常?
-
你的 cygwin 安装了多久?文本/二进制选项已于 2013 年从设置中移除。
-
是的,它可能更旧。我手头没有电脑atm。然而,我可能会坚持使用 LF 结尾。只是很好奇为什么它以前可以工作而现在不行(关闭支持的原因是什么)。
标签: windows cygwin line-endings