可以使用sed命令和正则表达式来实现这个需求。具体步骤如下:

  1. 使用curl命令获取结果,将结果保存到一个变量中:
result=$(curl --connect-timeout 3 'http://172.16.100.48:904/healthInfo')
  1. 使用sed命令和正则表达式来判断结果是否正常:
if echo "$result" | grep -q '版本号:'; then
  echo "结果正常"
else
  echo "结果错误"
fi
  1. 如果结果正常,使用sed命令替换:
sed -i 's/提交人: raopeng/提交人: new_name/g' <<< "$result"
  1. 如果结果错误,输出错误信息即可。完整代码如下:
result=$(curl --connect-timeout 3 'http://172.16.100.48:904/healthInfo')

if echo "$result" | grep -q '版本号:'; then
  sed -i 's/提交人: raopeng/提交人: new_name/g' <<< "$result"
else
  echo "请求超时"
fi
sed命令如何替换2种结果出现一种就替换成指定内容?例如 curl --connect-timeout 3 http1721610048904healthInfo 正常结果会输出:分支 test br提交id 1a8944a2be2ccd18fbbbc134c3d7ddda897f5ce2 br提交人 raopeng br提交时间 2023-04-03 10 18 55 br版本号 100而错误

原文地址: https://www.cveoy.top/t/topic/bilh 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录