shell脚本按行读取文件并解析

shell脚本读取一个配置文件,配置文件的格式如下:

name=abc

pwd=123456

permission=mop

文件名称为 config.cfg


要在shell脚本里读取这个配置文件,并且把值一一赋给相应的变量,实现如下

while read line; do
name=`echo $line|awk -F '=' '{print $1}'`
value=`echo $line|awk -F '=' '{print $2}'`
case $name in
"name")
name=$value
;;
"pwd")
pwd=$value
;;
"permission")
permission=$value
;;
*)
;;
esac
done < config.cfg

重点的解释一下

1. while read line; do 

done < config.cfg

按行读到变量 line 中


2. name=`echo $line|awk -F '=' '{print $1}'`

awk 命令是把一个字符串进行解析成一个数组, -F指定了 间隔符为  “=” , $1代表数组下标为0的字符串,即name值

$0代表字符串本身,这个要注意。

你可能感兴趣的:(Linux)