所以我试图根据命令行中的参数读取不同的配置。
例如,如果命令像这样;
./app.sh command1
然后读取系统中的. ~/config/config1.conf
文件。
如果命令是这样的
./app.sh command2
然后读取. ~/config/config2.conf
文件。
所以这会有所帮助,例如config1.conf
具有var=var1
,而config2.conf
具有var=var2
,因此这将允许我加载具有相同变量名的不同配置,但值不同。
我该怎么做?
答案 0 :(得分:1)
只需使用case
语句来选择所需的配置。
case $1 in
command1) cfg=config1 ;;
command2) cfg=config2 ;;
esac
cfg_file=~/config/"$cfg.conf"
if [ -f "$cfg_file" ]; then
. "$cfg_file"
fi