UNIX SHELL读取配置文件
配置文件(ini):
XXX:START APP_DIR /smc/run/bin/ DAT_DIR /smc/dyn/data/ TXF_DIR /home/loc/xxx SYB_DIR /smc/run/tp/sybase/OpenClientServer/prod SYB_NM TESTPROD1_SQL SYB_DB test MAIL_LIST test@test.com XXX:END
如何读取上述文件到变量中:
# cut the content of configuration file
set LINE_START = `grep -n XXX:START $CONFIG_FILE | cut -f1 -d:`
set LINE_START = `expr $LINE_START + 1`
set LINE_END = `grep -n XXX:END $CONFIG_FILE | cut -f1 -d:`
set LINE_TOTAL = `expr $LINE_END - $LINE_START`
tail +$LINE_START $CONFIG_FILE | head -$LINE_TOTAL > /tmp/tmp.file.$$
set CONFIG_FILE = /tmp/tmp.file.$$
取得变量值:
# Directory structure set APP_DIR = `awk '$1 == "APP_DIR" {print $2}' $CONFIG_FILE` set DATA_HOME_DIR = `awk '$1 == "DATA_HOME_DIR" {print $2}' $CONFIG_FILE`/$APP_SITE set TXF_DIR = `awk '$1 == "TXF_DIR" {print $2}' $CONFIG_FILE` set SYB = `awk '$1 == "SYB_DIR" {print $2}' $CONFIG_FILE` set DAT_DIR = `awk '$1 == "DAT_DIR" {print $2}' $CONFIG_FILE`