2009-04-20 37 views
2

我有一些使用cygwin中的gawk的awk腳本。現在我需要將這些腳本傳遞給沒有安裝cygwin的同事,但確實有Perl。我希望我可以只使用包含在Cygwin的A2P,但它失敗,像以下錯誤:如何讓Perl的a2p支持gawk?

Undefined subroutine &main::gensub called at ./t.pl line 18, <> line 1. 

我希望有現有的Perl庫/實現這些方法的模塊。任何指針?

回答

5

gensub()功能不支持a2p。如果您修改代碼以使用gsub(),則應該編譯它。

或者,您可以在翻譯的Perl程序的末尾添加一個gensub()子例程來模擬gensub()的功能。

但是,由a2p生成的Perl代碼不是很好維護,所以我只能用它作爲最後的手段。

如果您的gawk程序沒有調用其他cygwin/unix實用程序,那麼將它與程序一起分發給您的同事可能會更好。

+0

感謝您的回覆。我也在嘗試使用a2p學習一些perl。你的迴應有幫助。 – 2009-04-20 15:24:26