LINUX修改配置文件并重启脚本

背景

做测试工作的时候,经常需要修改程序调用的地址为MOCK地址,然后可能要修改回来。每次进入路径用vim修改后,还需要重启,感觉比较麻烦费事。于是有了下面的脚本内容

SH实现

#!/bin/sh
# s.sh
DIR_PATH=.         #目标文件所在目录                
OBJ_FILE=application.properties #目标文件名称

if [ "$1" == 1 ]
then 
param='abc'
else
param='xyz'
fi

#下面改变的是13行的内容,原内容将被参数$param代替
echo  "the original content:"
echo " "

sed -n -e "13p" $DIR_PATH/$OBJ_FILE    #显示13行的内容

sed -i "13c$param" $DIR_PATH/$OBJ_FILE          #用$param替换13行的内容

echo "Now, the  content:"
sed -n -e "13p" $DIR_PATH/$OBJ_FILE        #再次显示69行的内容
echo " "

sh /xxx/xx/x/server.sh restart

脚本说明:

执行 >./s.sh 1 配置文件第13行的内容替换为abc,并重启服务
执行 >./s.sh 2 配置文件第13行的内容替换为xyz,并重启服务

遇到的问题

  1. syntax error: unexpected end of file
    解决办法: 因为脚本是先在windows上写好再传到linux上,于是会有格式的问题。
>vim s.sh
>:set fileformat=unix
>:wq! 
  1. if条件语句一直报错
    解决办法: [] 内左右侧必须是空格, == 左右侧必须是空格
©️2020 CSDN 皮肤主题: Age of Ai 设计师:meimeiellie 返回首页