[英]Error Installing RVM through Cygwin in Windows
按照本教程 ,我尝试通过Cygwin安装RVM。
创建目录并克隆git存储库后,我需要运行./osx_or_cygin_kick_off来开始安装过程。
这是我收到的错误消息:
$ ./osx_or_cygwin_kick_off
./automation/rvm/rvm_install: line 2: $'\r': command not found
./automation/rvm/rvm_install: line 3: syntax error near unexpected token `$'\r''
'/automation/rvm/rvm_install: line 3: `install_rvm()
./automation/rvm/rvm_install_some_rubies: line 2: $'\r': command not found
./automation/rvm/rvm_install_some_rubies: line 3: syntax error near unexpected token `$'\r''
'/automation/rvm/rvm_install_some_rubies: line 3: `install_some_rubies()
我读过某个地方的文章说,通过doc2unix将文件转换为unix格式可能会解决问题,但是这只会产生更多错误消息。
有什么建议么?
编辑:
问题是某些Cygwin git安装尝试执行魔术换行处理。 要修复git以使其停止破坏行尾,请运行:
git config --global core.autocrlf false
在澄清评论后,原始答案变得更通用:
该文件包含CRLF( \\r\\n
)结束行序列,这在Windows上是典型的。 但是,Unix不喜欢它。 Unix(和Cygwin)只需要LF( \\n
)。 我猜您是剪切并粘贴了该文件,还是通过某种附加Windows行尾的机制下载了该文件。
要在Cygwin中修复文件:
tr -d '\r' <filename >filename.tmp
检查并确保filename.tmp看起来正常,然后:
mv -f filename.tmp
或者,执行浏览器下载并保存(而不是剪切和粘贴),或者从Cygwin外壳中使用curl
或wget
下载。
在上述所有情况下,您可能都没有可执行文件(可读)。 您可以通过以下方式使它可执行:
chmod 755 filename
或通过外壳显式运行它:
sh filename
如果使用Windows编辑器来处理Cygwin文件,则经常会遇到此问题。 Cygwin中的编辑器会很好(例如Vim)。 可选地,许多免费的Windows编辑器都支持Unix行尾。 Notepad ++是一个不错的选择,带有Unix行尾选项。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.