2python脚本在window编辑后linux不能执行的问题

Posted skyfly886

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2python脚本在window编辑后linux不能执行的问题相关的知识,希望对你有一定的参考价值。

参考简书博主天道酬勤abcd

python脚本在windows编辑后,在linux下执行提示 /usr/bin/python^M: bad interpreter: No such file or directory

看到^M应该是隐藏字符,原因就是windows行尾和liunx行尾标识符不一致,不同系统间行尾表示如下:

winodows编辑后,导致liunx下文件格式错乱,解决方法

1)在windows上,用UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行。转换方式如下(UltraEdit):File-->Conversions-->DOS->UNIX即可

2)在linux上直接替换把不可见字符去掉 sed -i ‘s/^M//g‘  filename (注意^M 在linux 下写法 按^M 是回车换行符,输入方法是按住CTRL+v,松开v,按m)

3)在liunx上转换文件的格式vim filename  :set ff可以查看文件格式会显示fileformat=mac dos 或者unix等等 直接 :set ff=unix :wq保存退出即可



以上是关于2python脚本在window编辑后linux不能执行的问题的主要内容,如果未能解决你的问题,请参考以下文章

Linux (二十四)从windows上编辑shell的脚本,在linux运行报错的解决方案

dos下编辑过sh脚本后无法运行

Python 脚本在 Windows 中不使用 sys.argv

linux中调试shell脚本

python之window编译脚本在Linux执行

Shell脚本 使用sed流编辑器一键修改CentOS网卡IP地址