我正嘗試從運行在執行一個打印的HTML代碼大量Perl庫特定的子程序。之後做一些研究,我發現,這是可以使用select()
方法來暫時改變print
輸出,比方說,STDERR,從前端完全隱藏,然後將其恢復到標準輸出,一旦庫已完成其工作。故障,方法是在覆蓋庫
很簡單,但對我來說這不需額外的工作。出於某種原因,有人在與上述內容無關的關鍵庫內創建了一個方法select()
,但它是一種與我們的數據庫進行交互的方法。因此,每當我嘗試使用my $filehandler = select(STDERR);
時,我都會得到數據庫方法,這會導致錯誤。而且我不能評論這個方法,或者從該庫中的導出方法中刪除它,而不會在其他腳本上造成太多麻煩 - 包括我試圖運行的庫。
我不能甚至使用HTML註釋塊擺脫這一點,因爲圖書館也打印評論。有沒有其他方法可以運行正確的select()
方法?或者任何其他替代方法暫時阻止HTML被打印?
編輯:作爲參考,我的Perl版本是專爲x86_64的Linux的線程多
也許... http://perldoc.perl.org/CORE.html – toolic
或者https://stackoverflow.com/a/3673935/1207195 –
它被稱爲「文件句柄」(它擁有一個資源),不是一個文件處理程序(它不處理事件) – ikegami