gpt4 book ai didi

linux - 为什么我的 bash 脚本不能正确运行?

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

我有一个简单的脚本,它在终端中运行良好,但在 init.d 脚本或 crontab 中却不行。我正在研究树莓派。

编写在后台运行的脚本是否有规则?

这是我的脚本:

 #!/bin/bash
while true; do echo "ALIVE" | sudo nc -l -p 80; done

最佳答案

  1. Cron 脚本在 /etc/crontab/etc/cron.d 或通过crontab -e 可以作为 user 而不是 root 运行。所有权限(例如在日志文件上)和授权信息(在您的情况下为 sudoers)必须设置相应地。

  2. 如果它们不包含 Shebang行,cron 脚本可能会在不同的 shell 中运行,具体取决于运行脚本的用户(请参阅 /etc/passwd 中设置的 shell)。也可以通过 crontab 中的 SHELL 变量覆盖 shell。这与 OP 的脚本无关。

  3. 运行 init.dcron 脚本的 shell 可能使用不同的环境。最值得注意的是 PATH 可能不同,因此建议仅使用绝对路径或根据需要设置 PATH

关于linux - 为什么我的 bash 脚本不能正确运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28826404/

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