1、产生问题的原因:
linux系统和windosw系统对文件换行的处理不一样导致的,windows文件换行使用'\r\n',linux中使用'\n'。
2、解决办法
使用vi/vim打开文件,修改文件格式为unxi格式,原来的格式为dos格式(windows)
:set ff=unix : 告诉 vi 编辑器,使用unix换行符
:wq 保存退出
这就是说,把一个文件从一种系统移到另一种系统,就有换行符的麻烦。如:用 vi 来尝试编辑一个采用 MS-DOS 格式的文件,你将会发现每一行的末尾有个 ^M 字符。(^M 就是 )。
set ff=unix ,就是告诉 vi 编辑器,使用unix换行符
set ff=dos ,就是告诉 vi 编辑器,使用dos换行符
以上操作之后,有的文件中会显示出^M,说明文件中还存在'\r', 这样文件还是无法在shell下运行,需要命令 cat filename1 | tr -d "\r" > newfilme, 去掉文件中'\r'就可以了。
3、以于python脚本
python脚本程序从windows转到linux系统上面后,除了要完成前面2步所说的操作后,还要在脚本前面加上python程序的启动路径,如下图:之后运行脚本就可以执行了。