我对Linux和shell脚本不是很熟悉,无论如何我尝试了一些我想添加到启动脚本的命令,但遇到了一些问题。
我尝试过不同的方法来摆脱
: unexpected end of file"
和
command not found
在此
#!/bin/bash
DEBUG="$1"
if [ "$DEBUG" = "debug" ]; then
echo "Lets start in debug mode"
fi
我试图从命令行运行它ike this
# sh myscript.sh debug
还尝试改变if if this this
if [ "$DEBUG" = "debug" ]
then
echo ......
但错误仍然存在 我知道我可以像这样运行它,但它似乎并没有满足它似乎
./myscript.sh debug
提示或提示最受欢迎!! :)
答案 0 :(得分:1)
您需要使用dos2unix
转换脚本。有问题的脚本 not 在脚本中有任何可能导致报告错误的违规行为。
错误可能是因为从Windows机器/文本编辑器复制并在Linux / Unix机器下运行的CRLF结尾。通过运行
将行尾(EOL)序列\r\n
转换为\n
dos2unix script.sh
答案 1 :(得分:0)
小心白色空间,例如这项工作对我来说(双倍相等):
#!/bin/bash
DEBUG="$1"
if [ "$DEBUG" == "debug" ]; then
echo "Lets start in debug mode"
else
echo "try again"
fi
您可以删除else语句