2012-11-22 215 views
1

我想通過另一個perl腳本調用perl腳本。我都用過,在perl中調用腳本腳本

system('/home/arun/title_verifier.pl'); 

但它拋出,

sh: 1: /home/arun/title_verifier.pl: Permission denied 

所以,我怎樣才能使它...

+0

你(或執行perl腳本)在.pl文件上有+ x右鍵嗎? – Konerak

+0

「+ x」的意思是,不能得到你?抱歉。 – Akan

+1

每個linux文件都具有文件權限(執行'ls -al'來查看它們)。基本的是+ rwx,意思是「讀取權限」,「寫入權限」,「執行權限」。如果一個文件有+ x,你可以執行它(用它的文件名稱/home/arun/title_verifier.pl來調用它,如果它沒有+ x,你不能將它作爲一個程序執行,但你可以使用另一個程序它作爲執行的輸入,在這個例子中用'perl/home/arun/title_verifier.pl' – Konerak

回答

11

確保Perl腳本具有執行權限

chmod +x /home/arun/title_verifier.pl 

或用perl

調用腳本
system('perl /home/arun/title_verifier.pl'); 
+0

「system('perl /home/arun/title_verifier.pl') ;「它工作正常.....謝謝。 – Akan

0

你也可以不與環境perl的運行它,但使用Perl腳本已運行

系統($^X, 「/home/arun/title_verifier.pl」)== 0或死「$ !「;