脚本运行错误 linux下运行脚本报读取或^M错误处理
常见的报错:
/bin/sh^M: bad interpreter: No such file or directory 异常
或
文件中的xxx失败辅助论坛,如:Error reading item NPAR from file INCAR.
这些脚本或文件在别的机器上运行都很正常,但是拷贝过来就不行了,很奇怪。
这是个很简单的问题,如果不知道原因,可能会重装系统,重装软件,折腾半天;遇到了不防试试下边的方法。
原因:
1、拷贝过程中脚本运行错误,或者创建的文件就是dos格式
2、如果某些linux系统或软件的某个版本支持dos格式,在它那边运行就正常。但是拷贝过来以后就报错误。之所以说一堆某个脚本运行错误,是因为确实没有找到什么规律。
解决办法:
1、在windows系统中转换:
利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行。
转换方式如下(UltraEdit):File-->Conversions-->DOS->UNIX即可。
2、在Linux系统中转换:
首先要确保文件有可执行权限
chmod 755 文件名
然后修改文件格式
vim 文件名
利用如下命令查看文件格式
:set ff 或 :set fileformat
可以看到如下信息
fileformat=dos 或 fileformat=unix
利用如下命令修改文件格式
:set ff=unix 或 :set fileformat=unix
修改后查看修改结果
:wq (存盘退出)
最后再执行文件就正常了。
来源:【九爱网址导航www.fuzhukm.com】 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!