shell 腳本讀取鍵盤輸入,並替換文件中的某個字符串

/etc/profile中有這麼一個變量export ES_HOME=/usr/local/elsearch/elasticsearch-6.6.0

現在想把/usr/local/elsearch/elasticsearch-6.6.0/config中的jvm.options文件裏面的

-Xms6g
-Xmx6g

改成鍵盤輸入的值,比如改成:

-Xms2g
-Xmx2g

可以這麼做:新建一個test.sh文件,然後把下面這段文本粘貼進去:

echo $ES_HOME
echo -e "是否修改jvm.options 請輸入y/n"
read jvmisflag
if [[ $jvmisflag == "y" ]]; then
 echo -e "請輸入jvm大小,注意g是小寫 例如 16g"
 read jvmSize
 sed -i 's/-Xms\(.*\)g/-Xms'"${jvmSize}"'/g' $ES_HOME/config/jvm.options
 sed -i 's/-Xmx\(.*\)g/-Xmx'"${jvmSize}"'/g' $ES_HOME/config/jvm.options
fi

然後執行後,就可以動態修改-Xms6g 和 -Xmx6g的值了。

其中 $ES_HOME表示 在/etc/profile中的ES_HOME變量。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章