安装部署脚本中:sed用法记录(转)

在linux系统上,sed的查找、替换、删除功能有着强大的实用性:

  1. 安装应用程序时,输入某些参数替换默认参数。
  2. 启动应用程序时,读取配置文件中的变量。
  3. 删除某些文件中的空行或者删除脚本中"#"开始的注释行。

1. 输入参数,替换配置文件中的默认参数

eg.  在log4j配置文件log4j.properties中:

log4j.appender.FileApp=org.apache.log4j.RollingFileAppender
log4j.appender.FileApp.File=/tmp/log/app.log 
log4j.appender.FileApp.MaxFileSize=20MB
log4j.appender.FileApp.MaxBackupIndex=10
log4j.appender.FileApp.layout=org.apache.log4j.PatternLayout
log4j.appender.FileApp.layout.ConversionPattern=%d{ISO8601} %r [%t] %-5p %c{1} - %m%n

默认文件输出路径为/tmp/log/app.log,用户安装的时候可以指定一个其他文件路径的脚本:

read input 
sed -i "s/ log4j.appender.FileApp.File=.*/ log4j.appender.FileApp.File=$input/g " log4j.properties 

 

2. shell读取配置文件参数

eg. 在Spring的配置文件applicationContext.properties中:

## MySQL DB part
mysql.db.user=root
mysql.db.password=password
mysql.db.schema=test

读取MySQL用户名、密码等的脚本:

ConfigFile=applicationContext.properties
UserLine=`sed -n "/mysql.db.user/p" $ConfigFile`
User=`echo ${UserLine#*=}`
echo $User
   #输出结果root

 

3. 删除applicationContext.properties中#开始的行:

sed -i "/^#/"d  applicationContext.properties

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值