笔者最近在开发中遇到新旧版本不兼容的问题,需要我解析的内容更新到最新后对于旧的日志将不支持,所以我需要设置开关来区分是用新的脚本还是原来旧的脚本;
这样我就遇到了比较基础的问题,那就是在shell脚本中如何读取环境变量并使用, 经过多方测试将我的一些方法写一写:
首先设置环境变量在命令行中设置就行:
$ setenv some_environment n (some_environment 为环境变量的名字; n 为 设置的环境变量的值)
然后再脚本中读取并使用:
如果是直接当做数值使用,那么就如下读取:
some_flag=${some_environment} "="等号两边不带空格即是赋值;
还可以当做字符或者字符串来处理:
if [ "${some_environment}" == "some" ]; then
some_flag=1
else
some_flag=0
fi
"=="双等号用来对比字符或者字符串是否相等,${} 用来取环境变量的值,如果用“”包起来,那么就是当做字符串来处理;
拿到环境变量并设置好自己的标志后,使用自己设置的flag时记得 使用 $somg_flag;
使用时判断flag是否等于自己的预期值如下:
if [ $some_flag -eq n ]; then
do .......
else
do .......
fi
eq、ne等等用来比较数值是否相等;
以上便是我的解决办法;