2017-07-07 89 views
1

如何將shell變量傳遞給pig參數文件。作爲一個例子,我有一個定義爲DB_NAME的shell變量。我想定義我的豬參數文件如何將shell變量傳遞給pig參數文件

p_db_nm = $ DB_NAME

我試着像上面不工作,我也嘗試像回聲$ DB_NAME也不起作用。

我知道我可以通過在命令行中使用-param來傳遞此信息,但我有很多變量,我希望將它放在param文件中,但值將在shell腳本中定義。我在谷歌搜索了很多主題,並沒有任何運氣!

我的問題與http://grokbase.com/t/pig/user/09bdjeeftk/is-it-possible-to-use-an-env-variable-in-parameters-file中發佈的內容類似,但是我看不到可行的解決方案。

任何人都可以幫忙嗎?

回答

0

您可以使用-param_file選項傳遞參數文件。

如果名爲「pig.cfg」象下面這樣定義的參數文件,

p_db_nm=$DB_NAME 
在外殼

,豬命令會是這樣,

pig -param_file pig.cfg 
在你的豬

最後,你可以使用在cfg文件中由KEY命名的變量。 (在這種情況下,$ p_db_nm)