我试图检查环境变量的值,并根据值做某些事情,它工作正常,只要变量设置。当它不是虽然我得到了一大堆的错误(因为BASH试图比较我指定的字符串与未定义的变量,我猜)
我试着实施一个额外的检查,以防止它发生,但没有运气。我使用的代码块是:
#!/bin/bash
if [ -n $TESTVAR ]
then
if [ $TESTVAR == "x" ]
then
echo "foo"
exit
elif [ $TESTVAR == "y" ]
then
echo "bar"
exit
else
echo "baz"
exit
fi
else
echo -e "TESTVAR not setn"
fi
这是输出:
$ export TESTVAR=x
$ ./testenv.sh
foo
$ export TESTVAR=y
$ ./testenv.sh
bar
$ export TESTVAR=q
$ ./testenv.sh
baz
$ unset TESTVAR
$ ./testenv.sh
./testenv.sh: line 5: [: ==: unary operator expected
./testenv.sh: line 9: [: ==: unary operator expected
baz
我的问题是,不应该’取消TESTVAR’取消它?似乎不是这样的情况…
最后
以上就是娇气火车最近收集整理的关于linux环境检查,linux – 检查环境变量的全部内容,更多相关linux环境检查,linux内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复