gpt4 book ai didi

linux - Bash 在启动时运行 gpxlogger

转载 作者:太空宇宙 更新时间:2023-11-04 10:42:05 24 4
gpt4 key购买 nike

我试图在启动 RaspPi 后运行 gpxlogger,问题是如果启动时没有来自 GPSD 的信号(在启动后大约 1.5-2 分钟收到信号),gpxlogger 会在 5 秒后自动关闭,有时更多,所以 sleep 可能无法解决它),如果发生这种情况,它会返回 0。

到目前为止我有:

(while true; do
until gpxlogger -d -f /home/pi/gpslogs/log'%Y-%m-%d-%H:%M:%S'.txt -i 2; do
echo "restarting"
sleep 10
done
done
) &

在/etc/init.d/rc.local

问题是,脚本不等待 gpxlogger 返回,而是每 10 秒启动一个新的 gpxlogger。

tl;dr 所需操作:

启动 Raspberry -> 循环 gpxloggers 在 GPSD 无数据 5 秒后死机 -> 在 GPSD 中修复 -> 单个 gpxlogger 保持登录文件

有人可以帮我解决这个问题吗?任何输入将不胜感激。

最佳答案

如果它已经在运行,请不要重新启动。

while true; do
if ! pidof gpxlogger >/dev/null; then
echo "restarting"
gpxlogger -d -f /home/pi/gpslogs/log'%Y-%m-%d-%H:%M:%S'.txt -i 2
fi
sleep 10
done &

(括号似乎是多余的,所以我把它们去掉了。)

关于linux - Bash 在启动时运行 gpxlogger,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34675306/

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