如何让多个循环脚本在启动时执行?

How do I make a number of looping scripts execute at startup?

我有几个 Python 脚本,所有脚本都涉及 while True: 和一个等待计时器,因此它们 运行 在不同的时间间隔。他们会做一些事情,比如监视串行端口并在远程服务器上查找我的代码的新版本。我没有使用 cron,因为有些需要偏移量(例如 运行 在每分钟过后十秒)并且我想让事情变得非常简单。

使用 rc.local,我在启动时 运行 hook.py。我可以同时连续地在hook.py到运行a.pyb.pyc.py中输入什么?我尝试了 subprocess(使用 shell = True)但我不确定下一行/下一个子进程命令是否会执行到第一个命令完成 - 这永远不会发生。另外它有一些我正在努力调试的奇怪行为(如果我直接 运行 脚本,我可以使用它们的绝对路径来读取文件;当子进程 运行 对它们进行处理时,它找不到文件) .

有什么建议吗?只想要一些简单的东西,可以同时执行几个新的 python 脚本。平台是Raspberry Pi.

或者:如果有我可以放入 rc.local 的代码,它将为指定目录中的所有 .py 文件生成一个新的 python 进程,那也可以。

这听起来更适合通过 cron 而不是无限 while 循环生成。

但是如果你想继续 运行将它们放在 rc.local 中,只需将 & 放在命令的末尾:

/usr/bin/python /home/you/command.py &

这 运行 是后台命令。

如果你想 运行 给定目录中的所有 Python 文件,我会写一个 bash 脚本,如:

for file in /home/you/*.py
do
    if [ "$?" == "0" ]
    then
        /usr/bin/python "$file" &
    fi
done

我们需要更多关于您的路径问题的信息才能告诉您更多信息。