$‘\r‘: command not found

问题

记录一下脚本执行的问题。

在Linux中执行脚本文件,提示:

run.sh: line 1: $'\r': command not found
run.sh: line 2: $'\r': command not found
run.sh: line 3: $'\r': command not found

view检查run.sh脚本文件,并未发现异常。那就可能是肉眼看不到的问题了。

检查发现。在命令的末尾存在换行符。
Shell脚本是在Windows系统中编写的,所以行尾是:\r\n
而在Linux系统中编写,则是:\n
所以将 \r 删除即可。

解决

当然就是删除 \r 字符
1、直接删除重新搞一份,前提是脚本内容比较少。

touch run.sh
然后复制。

2、命令处理

sed -i 's/\r//' run.sh

3、命令处理

dos2unix run.sh

然后再执行Shell脚本吧。

猜你喜欢

转载自blog.csdn.net/qq_38254635/article/details/131477890