我在bash脚本中收到错误,但我发现它没有任何问题。这是给我错误的代码。
if [ "$password" = "na" ]; then
log "Password not set"
usage
exit 1
fi
有人可以看到这个有什么问题吗?对我来说看起来很好,但我也很喜欢bash。
编辑:以下是以前的代码行,也许会有所帮助。
if [ "$SITE" = "unknown" ]; then
log "Site not set"
usage
exit 1
fi
if [ "$VERSION" = "na" ]; then
log "Version not set"
usage
exit 1
fi
if [ "$password" = "na" ]; then
log "Password not set"
usage
exit 1
fi
答案 0 :(得分:0)
您的示例对我来说没有错误。我猜你的文件可能包含“隐藏”字样。字符(很可能是' \ r' - 回车 - 但可能是别的东西)。使用本机Vi / Vim系列编辑器来避免这种情况;否则,请检查文本编辑器中的设置并设置您的行结尾'到Unix / OSX。试试这个:
tr -d '\r' /path/your_file.sh > /path/your_file.mod.sh
bash -n /path/your_file.sh ## should show error
bash -n /path/your_file.mod.sh ## no errors
:)
戴尔