在 Windows 下编辑的文本拿到 Linux 下经常会多出一些奇怪的字符,例如“^M”,一般情况下,只要不经常在 Linux 下编辑/查看,影响并不大。但对bash脚本则可能导致严重的问题 —— 无法正常执行!最近在服务器上运行 gonicorn 脚本时就出现了这种问题,因为xshell下未显示出“^M”,导致还纠结了很一会儿。
对于这种,一般来说我们只要强制转换一次格式即可,即从 DOS 到 UNIX。
用 vi 打开文本文件,执行命令:
:set ff?
命令行会回显 dos,再次执行命令:
:set ff=unix
即可将其强制转为 unix 格式,保存并退出后,脚本终于可以正常执行了。