今天将win下的清理.svn文件的脚本copy到linux下。无论怎么执行都会报如下错误:
/usr/bin/ruby^M: 坏的解释器
Google后了解到,在Win下,行结束符是"\n\r",而linux下是"\n"。所以在win下编辑过的文件在linux下会多"\r",多的字符用gedit和vim都看不到。
这个问题可以使用 tofrodos 工具来解决:
sudo apt-get install tofrodos
该工具提供两个指令: todos, fromdos.
fromdos cleansvn.rb
如此之后,问题解决。
参考文章:
本文介绍了一种常见问题:Windows下编写的Ruby脚本在Linux环境下运行时报错。问题在于不同操作系统之间的换行符差异导致。解决方案是使用tofrodos工具中的fromdos命令来清除多余的'^M'字符。
1976

被折叠的 条评论
为什么被折叠?



