- 论坛徽章:
- 15
|
- #!/usr/bin/env bash
- DEL=$1
- while read -r line
- do
- if [[ "$line" =~ (process.count=)([0-9]*) ]] ; then
- if [[ ${BASH_REMATCH[2]} -lt "$DEL" ]]; then
- echo " wrong count $DEL, exit..."
- exit 1
- else
- ((count=${BASH_REMATCH[2]}-1))
- echo "${BASH_REMATCH[1]}${count}"
- continue
- fi
- fi
- if [[ "$line" =~ (process)([0-9]*)(\..*) ]] && [[ "${BASH_REMATCH[2]}" -eq "${DEL}" ]];then
- continue
- fi
- if [[ "$line" =~ (process)([0-9]*)(\..*) ]] && [[ "${BASH_REMATCH[2]}" -gt "${DEL}" ]];then
- ((count=${BASH_REMATCH[2]}-1))
- echo "${BASH_REMATCH[1]}${count}${BASH_REMATCH[3]}"
- continue
- fi
- echo "$line"
- done < file
复制代码 比如把这个文件存为 a.sh
运行 bash a.sh 2 ,得到如下结果。- process.count=4
- process1.process_id = 324324 2 #进程全局业务代码
- process1.group_id = 24324 #进程全局组代码
- process1.alias =
- process1.exepath = dev/ #进程启动路径
- process1.cmd_param =
- process1.proc_desc =
- process1.group_desc = group_desc
- process1.env_process=
- process1.timeout_l = 120
- process1.timeout_m = 300
- process1.timeout_h = 600
- process1.restart = 1
- process1.child_restart = 1
- process2.process_id = 10147112 #进程全局业务代码
- process2.group_id = 102 #进程全局组代码
- process2.alias =
- process2.exepath = #进程启动路径
- process2.cmd_param =
- process2.proc_desc =
- process2.group_desc = group_desc
- process2.env_process=
- process2.timeout_l = 120
- process2.timeout_m = 300
- process2.timeout_h = 600
- process2.restart = 1
- process2.child_restart = 1
- process3.process_id = 10147113 #进程全局业务代码
- process3.group_id = 102 #进程全局组代码
- process3.alias =
- process3.exepath = #进程启动路径
- process3.cmd_param =
- process3.proc_desc =
- process3.group_desc = group_desc
- process3.env_process=
- process3.timeout_l = 120
- process3.timeout_m = 300
- process3.timeout_h = 600
- process3.restart = 1
- process3.child_restart = 1
- process4.process_id = 10147114 #进程全局业务代码
- process4.group_id = 102 #进程全局组代码
- process4.alias =
- process4.exepath = #进程启动路径
- process4.cmd_param =
- process4.proc_desc =
- process4.group_desc = group_desc
- process4.env_process=
- process4.timeout_l = 120
- process4.timeout_m = 300
- process4.timeout_h = 600
- process4.restart = 1
- process4.child_restart = 1
复制代码 |
|