我需要用我的Perl腳本中的幾個參數來調用「/usr/bin/pdf2txt.py」。我應該怎麼做?如何從Perl調用python腳本?
回答
如果您需要捕獲STDOUT:
my $ret = `/usr/bin/pdf2txt.py arg1 arg2`;
您可以輕鬆捕獲STDERR將其重定向到STDOUT:
my $ret = `/usr/bin/pdf2txt.py arg1 arg2 2>&1`;
如果您需要捕獲退出狀態,那麼你可以使用:
my $ret = system("/usr/bin/pdf2txt.py arg1 arg2");
如果您不想等待,或者您需要同時採集STDOUT/STDERR和退出狀態,則應使用IPC::Open3。
my $output = `/usr/bin/pdf2txt.py arg1 arg2`;
+1應該工作 – 2011-06-14 07:41:11
確保腳本是可執行的(chmod + x)並且它有適當的hashbang(例如#!/ usr/bin/env python)。 – damg 2011-06-14 07:42:49
如果不需要腳本輸出,但你要返回代碼,使用system()
:
...
my $bin = "/usr/bin/pdf2txt.py";
my @args = qw(arg1 arg2 arg3);
my $cmd = "$bin ".join(" ", @args);
system ($cmd) == 0 or die "command was unable to run to completion:\n$cmd\n";
不要加入'@ args'。使用'system $ bin,@args;' - 可以避免一些潛在的有害錯誤。 – friedo 2011-06-14 15:38:50
- 1. 從Python調用Perl腳本
- 2. 如何從另一個perl cgi腳本調用perl cgi腳本
- 3. 如何從flex調用perl腳本?
- 4. 如何從PIG調用perl腳本..?
- 5. 如何從Perl調用PHP腳本?
- 6. 如何從Perl腳本調用shell
- 7. 如何從Perl CGI腳本調用curl?
- 8. 從vbscript調用perl腳本
- 9. 從Make調用perl腳本
- 10. 從JavaScript調用Perl腳本
- 11. 調用從Perl腳本
- 12. 從Ruby調用Perl腳本
- 13. 如何從Python Perl腳本調用返回值的參數?
- 14. 如何從perl cgi腳本調用python程序
- 15. 如何從Bash腳本調用bin文件夾中的Python/Perl腳本?
- 16. 如何從Windows PowerShell腳本調用Perl腳本
- 17. 如何從tcl腳本調用Perl腳本
- 18. 從Python腳本調用Perl時,Perl沒有完全執行
- 19. 如何從另一個python腳本調用python腳本?
- 20. 如何從不同的python腳本調用python腳本?
- 21. 從Perl腳本運行Python腳本
- 22. 如何從一個perl腳本調用多個perl腳本並生成輸出?
- 23. 如何從perl腳本中調用的perl腳本獲取變量?
- 24. 調用Perl腳本
- 25. 調用Perl腳本
- 26. 如何從網頁調用python腳本
- 27. 如何從Android調用Python腳本
- 28. 如何從PHP調用Python腳本?
- 29. 如何從本地Python腳本調用Google Apps腳本
- 30. 使用AJAX從JavaScript調用Perl腳本
使用'system'/usr/bin/pdf2txt.py',$ arg1,$ arg2'會更好,因爲這樣可以避免使用shell插值的問題(以及危險的錯誤)。 – friedo 2011-06-14 15:37:51