不同shell(csh和bash)上的源shell脚本
我需要编写一个脚本,根据shell bash csh使用setenv或export设置变量 前 我知道csh和bash对于of语句有不同的语法,但是有办法解决这个问题吗不同shell(csh和bash)上的源shell脚本,shell,Shell,我需要编写一个脚本,根据shell bash csh使用setenv或export设置变量 前 我知道csh和bash对于of语句有不同的语法,但是有办法解决这个问题吗 谢谢没有,但是有一个技巧可能会有所帮助 首先,用两种shell的语法编写脚本。我在这里使用csh: setenv x 1 现在您可以执行以下操作: csh -c 'source setup-env.csh;exec bash' 这将创建一个具有正确环境的C shell。在这个shell中启动BASH会将所有环境变量导出到
谢谢没有,但是有一个技巧可能会有所帮助 首先,用两种shell的语法编写脚本。我在这里使用csh:
setenv x 1
现在您可以执行以下操作:
csh -c 'source setup-env.csh;exec bash'
这将创建一个具有正确环境的C shell。在这个shell中启动BASH会将所有环境变量导出到它
或者,您可以在BASH中创建函数setenv:
当然,这只适用于简单的csh脚本。可能的副本
csh -c 'source setup-env.csh;exec bash'
setenv() {
echo setting $1 to $2
export $1=$2
}