スクリプトファイルを分析し、次の行を見つけました。
sed -i '/JBOSS_HOME\/bin\/run.sh/i \export TMP_FOLDER=$JBOSS_HOME/server/default/tmp ' /home/jboss/runJBOSSEAP.sh
私はまだこのコマンドが何をしているのかわかりません。私はこれが-i
インライン作業であることを知っています。しかし、それが何をしているのか私はまだ知りません。この行を理解するのに役立ちます。
ベストアンサー1
sed -i
-i
ファイルが所定の位置で編集されることを示します。つまり、同じ名前で新しいバージョンを作成します。
/JBOSS_HOME\/bin\/run.sh/
スラッシュで区切られたパターンで、バックスラッシュで引用されたパターンにはスラッシュが含まれているのでJBOSS_HOME/bin/run.sh
。
i \export TMP_FOLDER=$JBOSS_HOME/server/default/tmp '
パターンマッチングをi
使用して行を挿入すると(現在の行の前に)コマンドが実行されます。追加する行はバックスラッシュで区切られているため、文字列が追加されますexport TMP_FOLDER=$JBOSS_HOME/server/default/tmp
。
/home/jboss/runJBOSSEAP.sh
宛先ファイル名。
例えば
$ echo JBOSS_HOME/bin/run.sh > pla
$ sed -i '/JBOSS_HOME\/bin\/run.sh/i \export TMP_FOLDER=$JBOSS_HOME/server/default/tmp ' pla
$ cat pla
export TMP_FOLDER=$JBOSS_HOME/server/default/tmp
JBOSS_HOME/bin/run.sh
例とほぼ同じです。ここ