我在Python編寫嵌入式豬腳本,我想傳遞參數是這樣的:如何獲得嵌入式Pig腳本中的命令行參數?
$ pig myscript.py arg1 arg2
我預計sys.argv
爲['myscript.py', 'arg1', 'arg2']
,但它是空的。
任何想法如何將命令行參數傳遞給嵌入式豬腳本?
我在Python編寫嵌入式豬腳本,我想傳遞參數是這樣的:如何獲得嵌入式Pig腳本中的命令行參數?
$ pig myscript.py arg1 arg2
我預計sys.argv
爲['myscript.py', 'arg1', 'arg2']
,但它是空的。
任何想法如何將命令行參數傳遞給嵌入式豬腳本?
sys.argv
應包括可執行文件的名稱,所以它可能會是['myscript.py', 'arg1', 'arg2']
,但看起來這是一個開放的問題,這是固定在最近版本的豬:https://issues.apache.org/jira/browse/PIG-2548。
也許檢查你使用的是比0.10.0更新的東西。
重新開啓這個線程...基本上,我創建了我在腳本中使用環境變量:
$ export file_in=filename; pig -useHCatalog ./POC_Python_Wrapper.py
,並在腳本:
import os
file_in = os.getenv('file_in', 'Unknown')