前景提要
我特别喜欢用 notepad ssh 到学校 linux 服务器撸代码最近写脚本语言( perl,ruby )的时候,经常会报各种稀奇古怪的错。总结一下心得。 [/img]看起来很正常,但是错误提示找不到文件,所以怀疑是第一行没有成功调用 ruby。 试试用 ruby 手动运行脚本,果然提示 shellbang 有一个\r,可能会造成问题。 [img] [/img]转成 16 进制看下,查了下 ASCII 字符 16 进制的代码,果然一堆 CR 符 \r 0x0d,windows 系统的换行是\r\n,先回车(carriage return),再换行(line feed),可以追溯到打字机时代。而 linux 直接\n 就换行了 [img] [/img]最简单方法,写个脚本二进制打开程序文本,删除所有 0d。记得去年上 socket 编程的时候,老师第一个教的程序就是在 linux 和 windows 之间转换文本,就是这样实现的 但是这样的话,每次写两行想测试的时候,就得手动运行下转换程序,额外增加了负担(我保存 ctrl S 都懒得按,用的是 notepad++的窗口失去焦点自动保存。。。) 但我又不想用 ssh 客户端的垃圾编辑器,于是将就一下,手动再 linux 里用 vim 敲第一行,剩下的 notepad++ ssh 就可以继续写了 还有什么坑,想想继续码字