shell脚本空行造成“: not found.sh“报错的解决方法


#事故现场

执行shell脚本文件,报错:: not found.sh: 6: coreinstall.sh:
查看脚本文件第6行,发现是空行;

#事故原因

window下的换行是回车符+换行符,也就是\r\n,而unix下是换行符\n。

#解决方法

方法一:使用notepad转换

在右下角的windows(CR LF),点击右键,选择转为Unix(LF)
在这里插入图片描述

方法二:使用vscode转换

点击右下角的CRLF,选择LF即可;
在这里插入图片描述

方法三:使用vim转换

使用vim打开xxx.sh

vim xxx.sh

直接输入“:set ff”,不用进编辑模式;
如果输出“fileformat=dos”,说明文本格式是windows下的;
直接输入“:set ff = unix” 即可。

#参考

https://stackoverflow.com/questions/82726/convert-dos-line-endings-to-linux-line-endings-in-vim


posted @ 2020-07-27 20:23  willingtolove  阅读(4592)  评论(0编辑  收藏  举报