我在尝试执行shell脚本时遇到以下错误,
$'\r': command not found: line 2:
请为同样的问题提出解决方案。
下面是脚本中使用的初始行,
#!/bin/sh
if [[ $# -lt 1 ]]; then
echo "ERROR Environment argument missing <dev,test,qa,prod>"
export RC=50
exit $RC
fi
发布于 2011-03-08 20:02:14
您的问题是该文件具有Windows行结尾。这可能是由于在Windows中编辑文件并尝试在非Windows系统上运行该文件造成的。
您可以使用dos2unix
转换行尾来解决此问题:
dos2unix ConstruedTermsXMLGenerator.sh
要在另一个方向上进行转换的相应实用程序是unix2dos
。
某些系统具有fromdos
和todos
。
发布于 2017-12-20 18:34:34
您可以使用sed -i 's/\r$//' scriptname.sh
将scriptname替换为实际脚本名称。
发布于 2019-04-25 06:09:50
我使用notepad++来转换行尾。
编辑>停机转换> UNIX/OSX格式
https://stackoverflow.com/questions/5230798
复制相似问题