Shell中根据svn是否有待更新的版本去决定是执行maven打包

1- svn 更新判断代码

本着学习的目的,这里使用了两种获取version的方法。

    localVersion=$(svn info -R | grep "Revision\:" | sort -k 2 -nr | head -n 1 | awk -F ' ' 'NR==1 {print $2}')
    serverUrl=$(svn info |grep "^URL:" | awk '{print $2}')
    serverVersion=$(svn info ${serverUrl} |grep "Last Changed Rev:" |awk '{print $4}')
    if test ${serverVersion} -gt ${localVersion}
    then
        svn update
        mvn clean package -DskipTests
        cd ${moduleName}/target/
        cp -f ${jarName} ${appHome}/jar/
    fi

2- 解释

  • sort
  svn info -R 递归查出所有文件的info信息
  sort -k 2 是以第二列排序
  sort -t : 是指定以“:”为列分隔符
  sort -nr: n是指以数字排序,默认是以字符排序的,那样的话,10会在2的前面,因为1大于2,-r (reverse)是以倒序排序。
 
  •  awk

  -F 指定分隔符

  NR==1 指定行号为1

  print $2 打印NR行2列的内容

 
 

转载于:https://www.cnblogs.com/chaos-x/p/11388141.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值