shell修改配置文件
来源:互联网 发布:mac 网游 编辑:程序博客网 时间:2024/05/02 00:42
#!/bin/sh
#================================================
#直接修改key对应的值
function ModCfgvalue ()
{
GetKeyLine $*
num=$? #返回值是0或者行号
if [ 0 -eq $num ]
then
#获取最后一行行号
num=$(awk 'END{print NR}' $1)
#num=`expr $num + 1`
echo $num
sed -i "${num}a $2 $3" $1
else
sed -i "${num}c $2 $3" $1
fi
}
#==================================================
#==================================================
#将原来的一行数据改成注释
function ModCfgnote ()
{
GetKeyLine $*
num=$?
if [ 0 -eq $num ]
then
echo "$2 is not existed in the file $1"
else
sed -i "s/$2 /#$2 /" $1
fi
}
#==================================================
#=================================================
#检查参数个数
function CheckParaNum()
{
#检查参数的个数是否2或者3或者其他
if [ $# -eq 3 ]
then
ModCfgvalue $*
elif [ $# -eq 2 ]
then
ModCfgnote $*
else
echo '参数个数有误,Usage: ./ModCfg a.conf test 123 '
exit
fi
}
#=================================================
#========================================================
#功能:检测文件存在与否
#传入 文件路径 $1
#传出 文件存在与否
function CheckFileExisted()
{
if [ ! -e $1 ] #如果文件不存在
then
echo "$1 文件不存在,请重新确认路径"
exit
fi
}
#=======================================================
#=======================================================
#功能:获取配置文件中的key的位置
#传入 key $2
#传出 行号
#算法:如果存在key,则返回对应的行号;如果不存在,则返回最后一行的行号(将key放在最后一行的下一行)
function GetKeyLine()
{
num=`awk "/^$2 /{print NR}" $1`
echo $num is the lineno
return $num
}
#=======================================================
#main goes here!
#step1 检查文件存在
CheckFileExisted $*
#step2 检查参数个数,确定函数使用
CheckParaNum $*
- shell修改配置文件
- 修改配置文件内容的shell
- 一个修改配置文件的linux shell script
- shell 配置文件
- 修改配置文件
- 读取配置文件 + 修改配置文件
- shell 修改配置文件中含有特定字符串的行的值
- 【Linux】使用sed、awk来完成批量修改配置文件的shell设计
- Shell配置文件与Shell Script
- shell 读取配置文件
- bash shell启动配置文件
- shell脚本读取配置文件
- shell读取配置文件
- shell脚本读取配置文件
- Bash Shell 启动配置文件
- shell常用配置文件
- linux shell 读取配置文件
- 使用 shell 加载配置文件
- 2015年广工操作系统实验(要求实现图形化界面)
- Codeforces 610D Vika and Segments 【线段树扫描线 求面积并】
- 安装CocoaPods遇到的问题及解决办法
- (Windows)Web服务器架设(Apache+Tomcat+php+JSP)
- Jfinal—悄悄走近你
- shell修改配置文件
- Codevs_P1033 蚯蚓的游戏问题(拆点网络流+最小费用流)
- python语法总结
- 苹果开发者计划那些事儿
- Android 媒体 III-媒体路由提供者
- [iOS]使用Command Line(终端)提交代码到远程库
- 常用的 WEB 服务器
- linux 运行级别
- linux服务器的部署-部署多个tomcat