我試圖解決一天中的問題,並且在我進入許多不成功的搜索之後!不能執行「bin」:錯誤的文件描述符(Perl)
我想在Perl腳本中使用ImageMagick套件中的二進制轉換來裁剪圖片。
當我試試這個簡單的代碼:
use Shell qw(convert);
convert("-crop", "50%x50%", $Src, "new_image.png");
在那完美的作品單個文件。
但是當我試圖在我正在進行的項目上實現它時(我正在實習,現在正在修復功能),消息「無法執行轉換:錯誤文件描述符」出現!
我檢查了$ Src的路徑,嘗試用硬代碼重新設置,設置PATH,沒有任何改變。
但
,如果我嘗試簡單:
convert(-h);
的作品完美! 我認爲在前面的代碼中可能存在干擾但不確定。
Ps:該項目從本地託管的php服務器啓動,donno如果它改變了一些東西,但永遠不會!
非常感謝您的閱讀和答謝!
---編輯--- 實際代碼問
Use Shell qw(convert);
.
.
.
sub checkSubScreen
{
#Parameters init
my ($this, $Scr0, $Scr1) = @_;
convert("-crop", "50%x50%", $Scr0, "tmp/scr0_crp.png");
convert("-crop", "50%x50%", $Scr1, "tmp/scr1_crp.png");
....
我不能告訴你整個代碼它真的太大了,但只是問我會盡量表現!
我們需要查看實際有問題的代碼才能幫助您。 – jwodder
是否有一個標題說'不能執行'bin''的原因,但是你報告錯誤是'Can not exec convert'? – TLP
是的,以保持標題更通用一些,但這並不會改變問題中的一件事;) – Kurt