Shell腳本 一鍵安裝JDK

背景

最近面對十幾臺“嗷嗷待配”JDK環境的機器,實在不想一個個配。
生命如此美好,怎能浪費在無聊的重複勞動上,遂編寫了個一鍵安裝JDK的Shell腳本。
腳本很簡單,而且對於簡單的環境配置也很實用。
完整的代碼貼在下面,希望也能幫助大家減輕工作量。

單步安裝,移步這裏

需求

  1. 能自動檢測可能默認安裝的openJDK,並能刪除之。
  2. 能自動配置JDK在 /etc/profile的環境。
  3. 可攜帶參數,參數爲普通用戶名,可將JDK相關配置進普通用戶的 .bash_profile環境。

一鍵安裝腳本

腳本即安裝文件已經備份到雲端,請戳

installJDK.sh

 

#!/bin/bash
# shell script to install jdk (default version jdk-6u45-linux-x64.bin)
# example : ./installJDK.sh  or ./installJDK.sh newLinuxUsername
# version 1.0 
# created by [email protected] 2014/5/7

# 1. remove openjdk if exists.
for i in $(rpm -qa | grep jdk | grep -v grep)
do
  echo "Deleting rpm -> "$i
  rpm -e --nodeps $i
done

if [[ ! -z $(rpm -qa | grep jdk | grep -v grep) ]];
then 
  echo "-->Failed to remove the defult Jdk."
else 

  # 2.unzip and install JDK(jdk-6u45-linux-x64.bin)

  chmod u+x ./jdk-6u45-linux-x64.bin
  ./jdk-6u45-linux-x64.bin

  mkdir /usr/java
  mv ./jdk1.6.0_45 /usr/java/jdk1.6.0_45
  rm -rf ./jdk1.6.0_45
  
  


  # 3. config /etc/profile

  cp /etc/profile /etc/profile.beforeAddJDKenv.20140507.bak

  echo "JAVA_HOME=/usr/java/jdk1.6.0_45" >> /etc/profile
  echo "CLASSPATH=.:$JAVA_HOME/lib.tools.jar" >> /etc/profile
  echo "PATH=$JAVA_HOME/bin:$PATH" >> /etc/profile
  echo "export JAVA_HOME CLASSPATH PATH" >> /etc/profileo 

  
  #echo "-->JDK environment has been successed set in /etc/profile."

  # 4. config user's .bash_profile
  if [[  -z "$1" ]] ;
  then 
    #echo "-->Config .bash_profile for JDK environment from $1"
    username=$1
    user_bash_file=/home/$username/.bash_profile
    
    #cp $user_bash_file user_bash_file.beforeAddJDKenv.20140507.bak

    cp /home/$username/.bash_profile /home/$username/.bash_profile.beforeAddJDKenv.20140507.bak

    echo "export JAVA_HOME=/usr/share/jdk1.6.0_20" >> $user_bash_file
    echo "export PATH=$JAVA_HOME/bin:$PATH" >> $user_bash_file
    echo "export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar" >> $user_bash_file

  fi

  # 5. Test JDK evironment
  if [[ ! -z $(ls /user/java/jdk1.6.0_45) ]];
  then
    echo "-->Failed to install JDK (jdk-6u45-linux-x64 : /usr/java/jdk1.6.0_45)"
  else 
    echo "-->JDK has been successed installed."
    echo "java -version"
    java -version
    echo "javac -version"
    javac -version
    echo "ls \$JAVA_HOME"$JAVA_HOME
    ls $JAVA_HOME

  fi
fi

 

使用腳本

因爲只求簡單的實現,所以併爲花時間考慮潛在的各種異常。
默認使用jdk-6u45-linux-x64.bin(當然替換也異常方便),注意腳本和安裝文件需要放在同個目錄下
將腳本粘貼到任意文本工具,選擇jdk-6u45-linux-x64.bin,全部替換爲你的JDK版本即可。

使用示例

# 不帶參數
 ./installJDK.sh 
# 參數爲普通用戶名
 ./installJDK.sh newLinuxUsername

 

2014/08/12 刪除 /etc/profile 多餘的配置

發佈了11 篇原創文章 · 獲贊 1 · 訪問量 8787
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章