2019-01-18
阅读量:
1272
shell脚本中的\ r字符不起作用
问题描述:
尝试执行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
解决方法:
(1)
该文件具有Windows行结尾。这可能是由于在Windows中编辑文件并尝试在非Windows系统上运行它。
您可以使用dos2unix
转换行结尾来解决此问题:
dos2unix ConstruedTermsXMLGenerator.sh
在另一个方向转换的相应实用程序是unix2dos
。
有些系统有fromdos
和todos
。
(2)可以使用 sed -i 's/\r$//' scriptname.sh
将scriptname替换为实际的脚本名称。






评论(0)


暂无数据
推荐帖子
0条评论
0条评论
0条评论