介绍
在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。
分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。
解决方案
1)在windows下转换:
利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行。转换方式如下(UltraEdit):File-->Conversions-->DOS->UNIX即可。
2)也可在Linux中转换:
首先要确保文件有可执行权限
sh>chmod a+x filename然后修改文件格式
sh>vi filename利用如下命令查看文件格式
:set ff 或 :set fileformat可以看到如下信息fileformat=dos 或 fileformat=unix
利用如下命令修改文件格式
:set ff=unix 或 :set fileformat=unix
:wq (存盘退出)最后再执行文件
sh>./filename
吸引人的 在线导览, 坚持下去 保持热情。十分感谢.
我关注你们的更新 旅行页面。增长见识掌握出行细节。
谢谢 照片。特别 令人愉快。
我热爱这样的想法, 参观你们描述的目的地。真棒。
温暖的 旅行素材! 现在想出发。
表示感谢 这些有趣的文章。格外 激励人。
万分感谢 旅行故事。真正 有益。
出色的 旅游杂志, 加油 保持这种风格。衷心感谢!
我常常想, 看到你们相册那样的地方。真的很鼓舞。
阅读你的博客, 我体会到, 旅游让人相连。万分感谢 旅行气氛。