2013-03-22 120 views
0

我已经写了一个名为“installcms.sh”剧本,我把它放在/根如何安装.sh脚本?

这是我的脚本

apt-get install python-setuptools python-imaging >> installcms.log > 2>&1 


easy_install pip >> installcms.log > 2>&1 

pip install django django-cms south django-appmedia >> installcms.log > 2>&1 

django-admin.py startproject djangocmsproject >> installcms.log > 2>&1 

cd djangocmsproject 

rm settings.py 

rm urls.py 

cp /root/settings.py settings.py >> installcms.log > 2>&1 

cp /root/urls.py urls.py >> installcms.log > 2>&1 

mkdir templates 

cd templates 

cp /root/example.html example.html >> installcms.log > 2>&1 

cd .. 

python manage.py syncdb --all >> installcms.log > 2>&1 

python manage.py migrate --fake >> installcms.log > 2>&1 

python manage.py runserver >> installcms.log > 2>&1 

当我尝试使用命令“/ root用户运行我的脚本/installcms.sh”

我收到此错误

****/root/installcms.sh: line 2: syntax error near unexpected token `2'** 

**/root/installcms.sh: line 2: `apt-get install python-setuptools python-imaging >> installcms.log > 2>&1'**** 
+0

用'2>&1'替换所有'> 2>&1'。 – Blender 2013-03-22 05:04:43

+0

'...... >> foo.log 2>&1'(没有额外的) – 2013-03-22 05:04:43

+0

看起来您应该创建一个Debian软件包集合,而不是shell脚本的临时安全性和可维护性。 – tripleee 2013-03-22 05:52:45

回答

1

从错误消息的脚本不正确。

以下重定向无效:>> installcms.log > 2>&1

它应该是:>> installcms.log 2>&1

您可以检查http://www.tldp.org/LDP/abs/html/io-redirection.html对重定向在bash是如何工作的进一步解释

(我假设你的默认shell是bash ,但其他shell中的重定向应该相同)

+0

谢谢,它的工作原理。但现在我得到这个错误:不正确配置:settings.DATABASES配置不当。请提供ENGINE值。检查设置文档以获取更多细节。 – Mathi 2013-03-22 05:51:50

+0

您可以选择一个有效的答案,以便您的问题不会再显示为“未答复”。谢谢。 – 2013-03-22 05:53:13

+1

@Mathi这些错误来自脚本本身。由于最初的问题是关于crontab(并且顺便标记为“python”),为了不混淆人物,您应该为脚本本身开辟一个新问题。 – 2013-03-22 05:57:47

1

ŧ他:

>> installcms.log > 2>&1 

应该是:

>> installcms.log 2>&1 
+0

谢谢,它的工作原理。但现在我得到这个错误:不正确配置:settings.DATABASES配置不当。请提供ENGINE值。检查设置文档以获取更多细节。 – Mathi 2013-03-22 05:54:30

+0

@Mathi:很高兴你的脚本正在运行。此错误来自脚本运行的其中一个程序。我分不清哪个。你必须自己解决这个问题。 – Johnsyweb 2013-03-22 22:51:10