`
yizhilong28
  • 浏览: 229321 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

shell自动化构建脚本

阅读更多

       最近在编写自动化构建脚本,大概的思想是,将cvs中某一tag的export出来,根据编写好的ant脚本,ant下,并将ant打出来的多个zip包,打成最终的zip包。另外还涉及到使用第三方的组件等。

      实现思想是,使用ini作为配置文件,shell从ini中读取必要的参数,登陆cvs,使用命令从cvs中export处代码,并根据源代码根路径下的buil.properties、build.xml编译,根据代码build文件下的build.properties、build.xml打包编译后的源码,够复杂的。现在本地下实现,后上传脚本到服务器,由系统运行脚本打包。

      本地安装的是ubuntu,服务器上的redhat,查看系统版本命令是lsb_release -a。有几个地方需要注意

    ini文件中

CVSUserName=jake

   shell读取该配置信息

CVSUserName=`awk -F= '$1=="CVSUserName" {print substr($2)}' $CONFIG`

   会发现在得到的CVSUserName不是"jake"而是"jake\r",为此需要需要删除“\r”。

   ubunt版本的修正方案是,表示很不解,不知道ubuntu怎么想的。

CVSUserName=`awk -F= '$1=="CVSUserName" {print substr($2,0,length($2))}' $CONFIG`

   redhat的修正版本是

CVSUserName=`awk -F= '$1=="CVSUserName" {print substr($2,0,length($2)-1)}' $CONFIG`

 

本地使用vm安装的ubuntu10,在跑程序过程中卡死。之后程序被kill,界面自动刷新,出来的界面奇丑,看图ubunt卡死后自动刷新出来的界面

  • 大小: 63.2 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics