我有一个我正在尝试运行的脚本,但只要我尝试运行它,我就会收到错误“:找不到命令”。以下是我试图解决的问题:
我仍然无法运行脚本。非常感谢任何帮助!
答案 0 :(得分:9)
这是由回车引起的。这是[{3}}:
的摘录检查您的脚本或数据是否具有DOS样式的行尾字符
使用cat -v yourfile
或echo "$yourvariable" | cat -v
。
DOS回车将在每行后显示为^M
。
如果找到它们,请使用dos2unix
(a.k.a。fromdos
)或tr -d '\r'
确保检查所有数据,而不仅仅是脚本本身。
答案 1 :(得分:1)
您可以使用这些删除不必要的字符:
tr -cd '[:alnum:][:blank:][:punct:]\n' < script.sh > new_script.sh
或者
tr -cd '[:graph:][:blank:]\n' < script.sh > new_script.sh
然后尝试new_script.sh
。