我有一个文件,其中包含应用程序以下列格式运行所需的所有环境变量...
setenv DISPLAY invest7@example.com
setenv HOST example.com
setenv HOSTNAME sk
...
我将如何设置环境。bash 中的变量使用上述文件?有没有办法以某种方式setenv
在 bash 中使用命令?
您可以定义一个名为的函数setenv
:
function setenv() { export "$1=$2"; }
要设置变量,请获取文件:
. your_file
这是一个改进的版本。
# Mimic csh/tsch setenv
function setenv()
{
if [ $# = 2 ]; then
export $1=$2;
else
echo "Usage: setenv [NAME] [VALUE]";
fi
}
这是一个更完整的 ksh/bash 版本。无论参数的数量如何,它的行为都类似于 csh/tcsh setenv。
setenv () {
if (( $# == 0 )); then
env
return 0
fi
if [[ $1 == *[!A-Za-z0-9_]* ]]; then
printf 'setenv: not a valid identifier -- %s\n' "$1" >&2
return 1
fi
case $# in
1)
export "$1"
;;
2)
export "$1=$2"
;;
*)
printf 'Usage: setenv [VARIABLE [VALUE]]\n' >&2
return 1
esac
}