ちょうど一種のサービスコードを作成しました。これを見てください:
do_start() {
while true
do
if [[ $(pgrep -fl loopsvn.sh | wc -l) -gt 2 ]]; then
echo "Already use by another process..."
exit
else
echo "Press [Ctrl+C] to stop..."
sleep 1
fi
done
}
do_stop() {
killall loopsvn.sh
}
私の質問は、他のプロセスが終了する前にどのように開始できますか?
私の計画はこんな感じです。
do_restart() {
cat loopsvn.sh > svntmp.sh
chmod +x svntmp.sh
do_kill
exec svntmp.sh #HOW CAN I DO THIS LINE AFTER do_kill
}
このスクリプトはシングルインスタンスプロセスなので、終了後に他のスクリプトが実行されるようにトリガされます。
答え1
xterm -e "bash -c \"./script.sh; exec bash\"" &
1つのコマンドしかできません./script.sh
。