您好,登錄后才能下訂單哦!
這篇文章主要介紹shell腳本如何自動安裝jdk,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
1.jdk-8u221-linux-x64.tar.gz jdk壓縮包(需要放在opt目錄下)
2.shell腳本
Sed 對字符的處理
-p 顯示,將某個選擇的數據打印顯示。通常 p 會與參數 sed -n 一起執行
-d 刪除,顯示模式空間刪除指定行后的內容,不會對原文件數據刪除
-a 添加,a 的后面可以接字符串,該字符串會在當前指定行的下一行出現
-c 更改, c 的后面可以接字符串,該字符串可以取代 n1,n2 之間的行
-i 插入, i 的后面可以接字符串,該字符串會在當前指定行的上一行出現
使用前需將jdk壓縮包放到opt目錄下
#!/bin/bash jdkTargz="/opt/jdk-8u221-linux-x64.tar.gz" # 檢查原先是否已配置java環境變量 checkExist(){ jdk1=$(grep -n "export JAVA_HOME=.*" /etc/profile | cut -f1 -d':') if [ -n "$jdk1" ];then echo "JAVA_HOME已配置,刪除內容" sed -i "${jdk1}d" /etc/profile fi jdk2=$(grep -n "export CLASSPATH=.*\$JAVA_HOME.*" /etc/profile | cut -f1 -d':') if [ -n "$jdk2" ];then echo "CLASSPATH路徑已配置,刪除內容" sed -i "${jdk2}d" /etc/profile fi jdk3=$(grep -n "export PATH=.*\$JAVA_HOME.*" /etc/profile | cut -f1 -d':') if [ -n "$jdk3" ];then echo "PATH-JAVA路徑已配置,刪除內容" sed -i "${jdk3}d" /etc/profile fi } # 查詢是否有jdk.tar.gz if [ -e $jdkTargz ]; then echo "— — 存在jdk壓縮包 — —" echo "正在解壓jdk壓縮包..." tar -zxvf /opt/jdk-8u221-linux-x64.tar.gz -C /opt if [ -e "/opt/install/java" ];then echo "存在該文件夾,刪除..." rm -rf /opt/install/java fi echo "---------------------------------" echo "正在建立jdk文件路徑..." echo "---------------------------------" mkdir -p /opt/install/java/ mv /opt/jdk1.8.0_221 /opt/install/java/java8 # 檢查配置信息 checkExist echo "---------------------------------" echo "正在配置jdk環境..." sed -i '$a export JAVA_HOME=/opt/install/java/java8' /etc/profile sed -i '$a export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar' /etc/profile sed -i '$a export PATH=$PATH:$JAVA_HOME/bin' /etc/profile echo "---------------------------------" echo "JAVA環境配置已完成..." echo "---------------------------------" echo "正在重新加載配置文件..." echo "---------------------------------" source /etc/profile echo "配置版本信息如下:" java -version else echo "未檢測到安裝包,請將安裝包放到/opt目錄下" fi
以上是“shell腳本如何自動安裝jdk”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。