我正在设置一个 jar 文件以在启动时运行。我有一个脚本来运行它,并且该脚本配置为在 cron 中使用 @reboot 在启动时运行。我目前有一个裸 CLI 界面,没有 DE。问题是,当脚本在 CLI 界面中运行时,我如何才能看到脚本(以及它运行的 jar)的输出?似乎脚本可能在后台运行,这可能是问题所在。我如何在前台运行它?
答案1
您无法在 @reboot 处“在前台运行它”。您可以在日志文件中捕获 STDOUT 和 STDERR(man bash
请参阅REDIRECTION
)。
您应该知道,@reboot 运行时的执行环境比“正常”环境受到的限制更多cron
。暂时将其添加env | sort >/tmp/cronjob.env
到脚本的开头(紧接着 shebang 行 ( #!/bin/bash
)),运行它,然后将其与您通常的环境进行比较env | sort >/tmp/normal.env