2012-03-13 59 views
0

我想在我的Unix shell腳本中添加一些導出語句,直到這一點,我只得到它與bash shell一起工作。有沒有辦法讓下面的導出適用於使用shell腳本的所有shell?爲所有Unix Shell創建環境變量

AXIS2_HOME = /家庭/用戶/ axis2-1.6.0 出口AXIS2_HOME

+0

您在'export'之前忘記了';'。 – 2012-03-13 05:22:04

回答

1

你是什麼意思 「的所有炮彈?」

  • 如果您的意思是不同的shell,如「我可以更改我的父/兄弟的環境」嗎?

然後不,你不能。導出變種應該意味着所有的孩子都會繼承它。 你可以通過讓你的腳本創建一個你以某種方式讓調用者執行的臨時文件來僞裝它,但它開始變得怪異並且在你的體系結構中提出了一個問題。

  • 如果你的意思是不同的炮彈在SH/bash中/ CSH/tcsh中/ zsh的/ KSH等

你可以像在所有 「sh」 的味道,炮彈的工作,但對於「CSH 「你需要使用setenv的口味。

取決於你想走多遠,你可以寫一些東西來存儲你的所有環境。 vars放在單獨的文件(例如env.dat)中,並使用sed/awk/perl將其轉換爲sh/csh語法。