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中的Shell脚本逐行读取文件的4种方法
- 下一篇: shell 实现读取文件某行的内容