为什么bash脚本中总是出现语法错误
我在bash中有以下函数,它以前是开关的case部分,但是无论我把它放在哪里,我总是会得到一个语法错误为什么bash脚本中总是出现语法错误,bash,command,Bash,Command,我在bash中有以下函数,它以前是开关的case部分,但是无论我把它放在哪里,我总是会得到一个语法错误 do_start(){ if[f $PIDFILE]; then echo "supervisord already running: $PIDFILE" exit 1 fi log_begin_msg "Starting Supervisor daemon manager..." start-stop-daemon --start --qui
do_start(){
if[f $PIDFILE]; then
echo "supervisord already running: $PIDFILE" exit 1
fi
log_begin_msg "Starting Supervisor daemon manager..."
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $SUPERVISORD -- $OPTS || log_end_msg 1
log_end_msg 0
}
我得到:
runScript.sh: Syntax error: "then" unexpected (expecting "}")
我不知道发生了什么,请帮助检查这是否是一个文件 您需要替换:
if[f $PIDFILE];
作者:
或者更好(因为您使用的是BASH)
我真不敢相信空间会造成如此大的破坏,谢谢!是的,BASH/shell语法在使用空格和引号时非常严格。
if [ -f "$PIDFILE" ];
if [[ -f "$PIDFILE" ]];