2013-05-21 58 views
0

我有如下問題的傢伙,我的PHP腳本是這樣的:/bin/sh的0:找不到命令

#!/usr/bin/php 
<?PHP 

// Define the path to file 
$file = 'mydb.sql'; 

if(!file) 
    { 
    // File doesn't exist, output error 
    die('file not found'); 
    } 
    else 
    { 
    // Set headers 
    header("Cache-Control: public"); 
    header("Content-Description: File Transfer"); 
    header("Content-Disposition: inline; filename=$file"); 
    header("Content-Type: application/x-sql "); 
    header("Content-Transfer-Encoding: binary"); 

    // Read the file from disk 
    readfile($file); 
    } 
?> 

現在我想通過crontab來叫我的PHP腳本,我的cron命令是:

0 0 * * * /web/conf/ -q /home/content/81/10928381/html/dumper/work/backup/pr_download.php 

但是,爲什麼,每次我跑我的劇本的時候,它總是給我發了一條錯誤消息: /bin/sh的0:找不到命令

你能他我是男生?

感謝

+1

將'if(!file)'改爲'if(!$ file)' – Baba

回答

0

試試這個

php -f /home/content/81/10928381/html/dumper/work/backup/pr_download.php >> /tmp/script_log.log 
+0

我試過你的命令,但是它不會對我的腳本產生任何影響。 –

+0

對不起,我錯了,當我寫我的第一個評論你的腳本實際工作。但是,我不檢查我的/ tmp文件夾。謝謝 –

3

是什麼/網絡/ conf目錄/?你在這裏錯過了一個可執行的命令...你想wget

如果您想使用您的php可執行文件,請查看可執行文件的位置。例如,/ usr/sbin目錄/ PHP

然後做

0 0 * * * /usr/sbin/php -f /home/content/81/10928381/html/dumper/work/backup/pr_download.php 
+0

我不知道我的PHP可執行文件的位置,PHP.ini的位置與PHP可執行文件的位置是否相同? –

+0

@PruusianEkaP不一定。它通常是/ usr/sbin/php,/ bin/php,/ usr/local/bin/php或類似的東西。搜索它。 (也可以用'locate/php'來找到它) –

0

我想試圖執行一個Windows文件(DOS格式)的腳本時,我有同樣的錯誤。

試試這個:

dos2unix pr_download.php 

,然後再次嘗試運行您的腳本。

讓我知道它是否有效。

+0

好的,謝謝大家,我已經找到了我的問題的答案。 –