bash 指令碼編程十一 JDK自動部署

來源:互聯網
上載者:User

現在示範如何用bash指令碼自動化部署JDK。

環境:Ubuntu12.04 amd 64 Desktop or Server, 必須是Bash shell

複製目錄java到目標機器,用root許可權執行install.sh指令碼即可。

看一下目錄結構:

.├── check.sh├── install.sh├── jdk1.6.0_35├── readme└── tool.sh

要執行的就是install.sh,這個指令碼會先調用check.sh指令碼裡的函數判斷當前是否安裝了jdk,版本號碼是否是1.6.0_35. 如果沒有安裝或者版本號碼不同,就安裝。

jdk1.6.0_35目錄是解壓後的oralce的Linux 64位的jdk包

tool.sh提供了基本的一些複製目錄和建立軟連結的函數。

先看install.sh指令碼:

#!/bin/bash source check.shsource tool.shhasJavar=$?SRC_JDK_FILES=./jdk1.6.0_35DST_JDK_FILES=/usr/jdk1.6.0_35if [ $r -eq 1 ]then    echo "java was installed"else    echo "java was not installed"    copyFolder $SRC_JDK_FILES $DST_JDK_FILES    createLink $DST_JDK_FILES /usr/jdk1.6    createLink '/usr/jdk1.6/bin/java' '/etc/alternatives/java'    createLink /etc/alternatives/java /usr/bin/javafi

再看check.sh指令碼

#!/bin/bash #check java is available in this sessionfunction hasJava {    v=`java -version 2>&1`    echo 'check java platform...'    pos=`expr match "$v" 'java version \"1.6.0_35\"'`    if [ $pos -gt 0 ]    thenreturn 1    elsereturn 0    fi}

最後再看tool.sh指令碼

#!/bin/bashfunction copyFolder {    if [ -d "$2" ]    thenecho "$2 folder exists already, stop copying."    elseecho "$2 folder doesn't exists, start copying..."cp -r $1 $2    fi}#create a link($2) to file($1)function createLink {    if [ -f "$2" ]    thenecho "$2 link exists already, removing it..."rm $2    elseecho "$2 link doesn't exists, creating it..."    fi    echo "creating link: $2 to $1"    ln -s $1 $2}

有了這個,以後工作就方便多了。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.