shell脚本不执行

shell脚本不执行
问题:执行shell脚本,死活不执行,报错。我看了下,脚本很简单,也没有常规性的错误,报“: bad interpreter: No such file or directory”错。一
看这错,我就问他是不是在windows下编写的脚本,然后在上传到linux服务器的……果然。
原因:在DOS/Windows里,文本文件的换行符为rn,而在nix系统里则为n,所以DOS/Windows里编辑过的文本文件到了nix里,每一行都多了个^M。
解决:
1)重新在linux下编写脚本;
2)vi :% s/r//g :% s/^M//g (^M输入用Ctrl+v, Ctrl+m)
附:sh -x 脚本文件名 ,可以单步执行并回显结果,有助于排查复杂脚本问题。

发布了187 篇原创文章 · 获赞 30 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/Rio520/article/details/103831035