gpt4 book ai didi

linux - 如何停止重启后启动的ROS脚本

转载 作者:太空宇宙 更新时间:2023-11-04 12:07:44 25 4
gpt4 key购买 nike

我创建了一个脚本来检查某个服务器是否正在运行并在发生崩溃时重新启动它(该脚本每 10 秒无限运行一次)。

如何停止/忽略/中断脚本?我无法运行任何命令,CTRL+C、CTRL+A、CTRL+Z 不起作用。

主要问题还在于机器服务器未运行,因此无法使用 MobaXterm 访问 IP。我在 VirtualBox 上运行 Ubuntu 14.04,只有终端,没有 GUI!

重启脚本:

#! /bin/bash
while :
do
COUNT="$(pgrep -f Odie | wc -l)"
echo $'\n'
echo "Number of Odie processes (COUNT) = $((COUNT))"
echo "$(pgrep -fla Odie)"

case "$(screen -ls | grep Odie | wc -l)" in
0) echo "Restarting Odie: $(date)" | sudo tee -a /var/log/OdieLog.txt
bash -c "exec -a OnlyOdie ./screen_start.sh"
;;
1) # all ok
echo "Process is running: $(date)" | sudo tee -a /var/log/OdieLog.txt
;;
2) echo "Removed double Odie: $(date)" | sudo tee -a /var/log/OdieLog.txt
#kill $(pgrep -f OnlyOdie | awk '{print $1}')
screen -ls | awk -vFS='\t|[.]' '/Odie/ {system("screen -S "$2" -X quit")}'
;;
esac
sleep 10
done

屏幕启动.sh

#! /bin/bash
SCREEN_COUNT="$(screen -ls | grep Odie | wc -l)"

if [ "$SCREEN_COUNT" -eq 0 ]
then
echo "SCREEN_COUNT = ZERO"
screen -sdm ./start.sh -S Odie
fi

很遗憾,我无法添加 ROS 文件内容,因为我无法访问它。

最佳答案

因为我无法从其他来源访问它,所以我找到了一种在 Linux 中切换屏幕的方法:CTRL+Alt+F1(转到 F6)。

这使得以用户身份登录并重新编辑文件/终止进程成为可能。

关于linux - 如何停止重启后启动的ROS脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50016991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com