在windows上写的python脚本,传到linux上执行报错:/usr/bin/python^M: 解释器错误: 没有那个文件或目录
大多数是因为脚本文件在windows下编辑过。在windows下,每一行的结尾是\r\n,而在linux下文件的结尾是\n。那么,你在windows下编辑过的文件在linux下打开看时候每一行就会多出来一个字符\r,而在linux下文件的结尾是\n,用cat -A filename 时你可以看到这个\r字符被显示为^M,这时候只需要删除这个字符就可以了。
解决方案
利用编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行。
转换操作步骤(UltraEdit): File—>Conversions—>DOS->UNIX 即可。
操作步骤如下
1.首先要确保这个文件有执行的权限
2.用文本编辑器,将文件打开如:vim,vi
3查看当前文件的格式信息:命令是 :set ff 或者 set fileformat
输出的信息 fileformat=doc
4修改文件的格式 命令是 :set ff=unix 或者 :set fileformat=unix
改完之后再确认一下,文件格式是否已经修改成功。
输出下面的信息说明修改成功,保存退出,就可以执行该脚本了
fileformat=unix