介绍
在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
这个页面 实在地 打开世界。保持方向!
我珍视, 这里分享真实经验。你的网站 就是 正是这样的。干得好。
阅读你的博客, 我看出, 各国更亲近。感谢 旅行气氛。
我经常阅读 关于旅行的资源。太棒了学到新知识。
吸引人的 旅游杂志, 加油 充满灵感。感谢!
关注更新, 我看出, 旅行带来灵感。无限感谢 旅行气氛。
我热爱, 充满真情实感。你的项目 就是 最好的例子。请继续。
我总是关注 度假栏目。超级棒找到这样的文章。
吸引人的 在线导览, 坚持下去 保持热情。十分感谢.
我关注你们的更新 旅行页面。增长见识掌握出行细节。