修改配置文件--未运行

 1 #!/bin/bash
 2 #手动输入端口号
 3 read -p "请输入端口号:" port
 4 #echo $port
 5 #通过端口号获取容器名称
 6 container_name=`docker ps |grep "$port" |awk -F "[ ]+" '{print $NF}'`
 7 if [ ! $container_name ];then
 8 echo "端口号"$prot"对应容器不存在"
 9 exit
10 else
11 echo $port"对应容器为:"$container_name
12 read -p "是否开始修改配置文件:y/n?" KEY
13 case $KEY in
14 y)
15 #批量修改java服务配置
16 grep -R --include=\*.{xml,properties} '10501' /data/docker/ |awk -F "[:]" '{print $1}' |xargs sed -i "s/10.56.69.167/$container_name/g"
17 grep -R --include=\*.{xml,properties} '10501' /data/docker/
18 ;;
19 n)
20 echo "已退出修改"
21 ;;
22 *)
23 echo "请重新执行脚本"
24 exit
25 ;;
26 esac
27 fi

 存在问题:

grep -R --include=\*.{xml,properties} '10501' /data/docker/ |awk -F "[:]" '{print $1}' |xargs sed -i "s/10.56.69.167/$container_name/g"
放在if,else中运行报错“sed:没有输入文件”。
posted @ 2018-07-13 11:55  随风听雨  阅读(128)  评论(0)    收藏  举报