![](/img/trans.png)
[英]How can I make bash `set` only list environmental variables and not functions
[英]How can I set environmental variables in bash using setenv?
我有一個文件,其中包含應用程序以下列格式運行所需的所有環境變量...
setenv DISPLAY invest7@example.com
setenv HOST example.com
setenv HOSTNAME sk
...
我該如何設置環境。 bash中的變量使用上面的文件? 有沒有辦法以某種方式在bash中使用setenv
命令?
您可以定義名為setenv
的函數:
function setenv() { export "$1=$2"; }
要設置envariables,請獲取文件:
. 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
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.