当我尝试通过将命令添加到 /etc/profile 来在 Raspberry Pi 启动时执行 Python 脚本时,为什么它会在后台运行两次?

Nas*_*qab 5 python unix linux startup raspberry-pi

当我尝试通过将命令添加到 /etc/profile 来在 Raspberry Pi 启动时执行 Python 脚本时,为什么它会在后台运行两次?

我在文件 /etc/profile 的末尾编写了一个命令,用于在 Raspberry Pi 启动时运行 Python 脚本,“sudo python /path/filename.py &”,由于某种原因,它每次都会运行两次。当我注释掉该行并从命令行手动执行它时,它会正常运行。为什么会发生这种情况?我可以采取什么措施来防止这种情况发生?

我知道它实际上在后台运行了两次,因为在我的代码中,我有一个蜂鸣器,有时会发出两次蜂鸣声,有时会发出 3 次蜂鸣声,并且它会发出 4 次蜂鸣声,而不是 2 次和 6 次而不是 3 次。代码也结束这是自相矛盾的,显然是因为每个脚本运行都试图同时做其他事情。

提前致谢。

Nas*_*qab 2

我正在用一种更好的在引导/启动时运行脚本的方法来回答我自己的问题。

我不太确定为什么会发生这种情况,但我确实了解到使用这种方法在启动时执行脚本是一种不好的做法,最好避免。

我开始使用 Crontab。

这是你需要做的:

crontab -e

这将打开 crontab,然后添加以下行:

@reboot python /文件位置/文件名.py

这将在 Pi 启动后立即执行该脚本。

不再运行双脚本!