不知道为什么这个小脚本不起作用

不知道为什么这个小脚本不起作用

我正在尝试编写一个小脚本来为我正在创建的 Python 网站启动 gunicorn。我修改了在https://github.com/benoitc/gunicorn/blob/master/examples/gunicorn_rc稍微。这是我的版本。

#!/bin/sh

GUNICORN=/usr/local/bin/gunicorn
ROOT=/srv/mobile-site/app
PID=/var/run/gunicorn.pid

APP=mobilecms:app

if [ -f $PID ]; then rm $PID fi        

cd $ROOT
exec $GUNICORN -b 127.0.0.1:8080 -w 8 -k gevent --pidfile=$PID $APP

当我尝试运行脚本时,它显示此错误

/etc/init.d/gunicorn: 13: Syntax error: end of file unexpected (expecting "fi")

有人知道出了什么问题吗?

答案1

rm $PID和之间需要一个分号fi。如下所示:

if [ -f $PID ]; then rm $PID; fi 

分号本质上是一种简写,因此您可以将这个小 if 语句放在一行上。如果没有它们,它将看起来像这样:

if [ -f $PID ]
then
    rm $PID
fi 

相关内容