シェルスクリプトで jdk を自動インストールする例
2022-02-07 13:01:21
1. インストールの準備
1. jdk-8u221-linux-x64.tar.gz jdk アーカイブ (opt ディレクトリにある必要があります)
2.シェルスクリプト
2.シェルコマンド
セドの文字の取り扱いについて
-p 表示:表示するデータの特定の選択部分を表示します。通常、p は引数 sed -n と共に実行されます。
-d delete: 元のファイルのデータを削除せずに、指定した行を削除した後のスキーマスペースの内容を表示します。
-a add, a の後に現在指定されている行の次の行に表示される文字列を指定することができます。
-c change, c の後に n1,n2 の間の行を置き換える文字列を指定することができます。
-i挿入、iの後に現在指定されている行の上の行に表示される文字列を指定することができます。
3.シェルスクリプト
使用する前に、opt ディレクトリに jdk アーカイブを配置する必要があります。
#! /bin/bash
jdkTargz="/opt/jdk-8u221-linux-x64.tar.gz"
# Check if the java environment variables were originally configured
checkExist(){
jdk1=$(grep -n "export JAVA_HOME=. *" /etc/profile | cut -f1 -d':')
if [ -n "$jdk1" ];then
echo "JAVA_HOME is configured, delete the contents"
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 path configured, delete content"
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 path configured, delete content"
sed -i "${jdk3}d" /etc/profile
fi
}
# Check if jdk.tar.gz is available
if [ -e $jdkTargz ];
then
echo "- - jdk tarball exists - - "
echo "Unpacking jdk tarball... "
tar -zxvf /opt/jdk-8u221-linux-x64.tar.gz -C /opt
if [ -e "/opt/install/java" ];then
echo "This folder exists, delete... "
rm -rf /opt/install/java
fi
echo "---------------------------------"
echo "Creating jdk file path... "
echo "---------------------------------"
mkdir -p /opt/install/java/
mv /opt/jdk1.8.0_221 /opt/install/java/java8
# Check configuration information
checkExist
echo "---------------------------------"
echo "Configuring jdk environment... "
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 environment configuration is complete... "
echo "---------------------------------"
echo "Reloading profile... "
echo "---------------------------------"
source /etc/profile
echo "The configuration version information is as follows: "
java -version
else
echo "No installation package detected, please put the installation package into the /opt directory"
fi
この記事は、シェルスクリプトが自動的にjdkをインストールするために導入され、より関連するシェルが自動的にjdkのコンテンツをインストールしてくださいスクリプトハウスの以前の記事を検索したり、次の関連記事を閲覧し続けることは、将来的に多くのスクリプトハウスをサポートすることを願っています
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
シェルスクリプトがテキストファイルを1行ずつ処理する方法
-
詳細な手順でフォーマットされたディスクを素早く作成するシェルスクリプト
-
Rsyncはすべてのバックアップツールを殺す、あなたは手動で特定のディレクトリをブロックすることができますか?
-
Linux Shellのパラメータ取得方法
-
Linux bashのバウンスシェルの原理を簡単に解析してみた
-
シェルテキスト処理三銃士におけるsedの使用について
-
ディスク監視システム導入のためのシェルスクリプト
-
cdコマンドの使用を減らすためのautojumpコマンドのLinux実装
-
Linuxシェルのパスパラメータ実装原理とコード例
-
シェル言語の日付の使用例