执行脚本报错,错误信息如下:
: invalid optionsh: line4: set: -
set: usage: set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...]
查看脚本源码:
发现是 set-e报出来
分析,因为 set-e命令作用:脚本内该行命令下所有命令遇见异常返回,则直接退出;
但是该报错并非异常退出显示的命令,因此将脚本中set-e注释掉,执行脚本,出现:
发现错误原因是该脚本是 windows格式下的文件,在linux环境下执行
修改脚本文件格式:
将脚本进行转换去除 windows下的\r
sed -i's/\r//'*.sh
去除当前目录下所有sh文件的\r
find ./ -type f -name "*.sh" -print0 | xargs -0 sed -i 's/\r//'
再次执行脚本,错误解决