我刚刚制作了某种服务代码。看一下这个:
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
}
该脚本是单实例进程,因此kill后会触发其他脚本执行。
答案1
xterm -e "bash -c \"./script.sh; exec bash\"" &
其中./script.sh
可以只是一个命令。