2012年8月5日星期日

YuchBerry語盒自動更新服務器升級版本

閒來無事,蛋疼的緊就做了個語盒的服務器版本升級腳本,以方便自己在Yuchting老大更新版本的時候一鍵更新服務器版本。

Yuchberry

 看起來是複雜的一件事,說出後也就一文不值,沒司馬好神秘的了。
思路
  1. 下載yuchberry服務器版本號文件
  2. 對比本地版本文件
  3. 如果有最新的則執行系列下載、解壓、替換本地svr.jar文件,否則停止操作
  • #!/bin/sh
    cd /usr/yuch/update    #进入升级目录
    mv latest_version update_version
    wget yuchberry.googlecode.com/files/latest_version    #下载版本号
    read u1 read u2 x1="http://yuchberry.googlecode.com/files/yuchsbox_server_"     #下载程序链接
    l2=".zip"     #下载程序扩展名
    c1=`expr $u1 \> $u2`     # 比较版本号,并赋给c1,为真时值为1,否则是0
    if [ $c1 -gt 0 ] ; then wget $x1$u1$l2
    mv yuchsbox*.zip update.zip    #重命名升级包
    unzip update.zip    #解压升级包
    rm -f -r dev    #移除原解压包
    mv yuchberry* dev    #重命名最新解压包
    #Copy to the YB复制到各YB目录
    cp -f /usr/yuch/update/dev/svr.jar /usr/yuch/update/test
    cp -f /usr/yuch/update/dev/svr.jar /usr/yuch/A
    cp -f /usr/yuch/update/dev/svr.jar /usr/yuch/B
    cp -f /usr/yuch/update/dev/svr.jar /usr/yuch/C
    cp -f /usr/yuch/update/dev/svr.jar /usr/yuch/D
    reboot; fi # 判断 如果C1>0 即更新到全局
把以上文本保存為.sh文件,並保存至任意Yuchs服務器位置即可。當要有更新的時候手動執行該腳本即可更新;
如果想實現自動更新就設置計劃任務定期執行該腳本以完成更新。
在此特別感謝@慧正(Jambu) 寫出比對代碼。

没有评论: