执⾏shell脚本报错,但控制台执⾏正常
问题:最近编写shell脚本,遇到直接执⾏shell脚本怎么也不成功,但是在控制台输⼊命令就能执⾏成功,报错如下图所⽰:
shell最简单脚本脚本内容如下:
脚本实现功能很简单,且语法也没问题,但是运⾏脚本就报错,经过艰苦排查,发现问题在于 filebeat_kill.sh 是我在windows下编辑然后上传到linux系统⾥执⾏的。.sh⽂件的格式为dos格式。⽽linux只能执⾏格式为unix格式的脚本。
我们可以通过vi编辑器来查看⽂件的format格式。步骤如下:
1.⾸先⽤vi命令打开⽂件:vi filebeat_kill.sh
2.在vi命令模式中输⼊ :set ff 然后回车,如下图:
结果显⽰⽂件的格式为dos:
3.修改⽂件format为unix
使⽤vi修改⽂件format,命令 :set ff=unix,回车
4.修改完成后,查看⽂件格式已改为unix
再次执⾏ ./filebeat_kill.sh,执⾏成功

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。