- 论坛徽章:
- 0
|
查到一个脚本 可以解决 但脚本整个测试是有问题的 如newvalue 参数 不过可以拿下部分出来使用。- #!/bin/sh
- if [ $# -lt 2 ];then
- echo 'Usage:inifile <.ini file> <section> [<key>] [<newvalue>]'
- exit 1
- fi
- if [ "$3" = "" ];then
- sed -n "/\[$2\]/,/\[.*\]/{
- /^\[.*\]/d
- /^[ ]*$/d
- s/;.*$//
- p
- }" $1
- elif [ "$4" = "" ];then
- sed -n "/\[$2\]/,/\[.*\]/{
- /^\[.*\]/d
- /^[ ]*$/d
- s/;.*$//
- s/^[ | ]*$3[ | ]*=[ | ]*\(.*\)[ | ]*/\1/p
- }" $1
- else
- if [ "$4" = "#" ];then
- sed "/\[$2\]/,/\[.*\]/{
- s/^[ | ]*$3[ | ]*=.*/ /
- }p" $1 > /tmp/sed$
- mv /tmp/sed$ $1
- else
- sed "/\[$2\]/,/\[.*\]/{
- s/^[ | ]*$3[ | ]*=.*/$3=$4/
- }p" $1 > /tmp/sed$
- mv /tmp/sed$ $1
- fi
- fi
复制代码 |
|