2011-05-02 135 views
0

當我在cron.sh文件下面的shell腳本(bash腳本)未知錯誤執行shell腳本

#!/bin/bash 

WORKON_HOME="/home/django/domains/example.com" 
PROJECT_ROOT="/home/django/domains/example.com/django-project/" 

. $WORKON_HOME/bin/activate 

cd $PROJECT_ROOT 
python manage.py cron 

但是當我運行:

$ sh cron.sh 

我有以下錯誤

: not found 
: not found 
/bin/activatepen /home/django/domains/example.com 

服務器信息

cat /etc/*-release 
DISTRIB_ID=Ubuntu 
DISTRIB_RELEASE=9.10 
DISTRIB_CODENAME=karmic 
DISTRIB_DESCRIPTION="Ubuntu 9.10" 

我在做什麼錯?

回答

0

您的腳本有錯誤的行尾。通過dos2unix

+0

我會永遠感謝Ignacio 我在windows上使用eclipse編輯遠程文件,並忘記將分隔符行設置爲unix。 兩天內是我的生日,我會放一支蠟燭;-) – rmaceissoft 2011-05-03 01:56:00

0

好吧,您沒有向我們展示您嘗試運行的代碼中的所有內容。所以我會一般回答:

使用sh -x cron.sh運行腳本,它會給你非常詳細的輸出,直到調用python。如果錯誤發生在該點之前,那麼你知道它在sh一半以及造成它們的原因。如果在此之後,您將不得不調試python腳本。

0

使用

bash -x cron.sh 

./cron.sh 

務必使其可執行嘗試。