用shell脚本解放生产力[by谢锦斌]

应用场景:

手上有批量执行的脚本主要用来部署上传打包好的程序.所以问题来了:

  • 如何读取所有脚本?
  • 如何修改文本中类似version="xxx"中的xxx?
  • 如何执行脚本时不需要输入密码?

思路:

读取文件列表list,然后循环读取利用for循环,在循环体做你想要的逻辑

代码实现:

  #!/usr/bin/env bash
  for entry in "$search_dir"/home/xiejinbin/code/mercury/web/setup/*.sh
  do  
      echo "$entry"  
      echo $entry  
#这里是version='xxx'替换成了version='0.8'
      sed -i 's/version=".*"/version="0.8"/' $entry   
#这里是在aaa上一行加入bbb
      sed -i '/sshUser="aaa"/i\sshPass="bbb"' $entry  
#利用sshpass无需手动填密码
      sed -i 's/ssh -t/sshpass -p ${sshPass} ssh -t/' $entry  
      sh $entry
  done

你可能感兴趣的:(用shell脚本解放生产力[by谢锦斌])