我有大约 5 个不同的 PHP 脚本,即使在终端关闭的情况下也必须由服务器持续运行。
如何通过 nohup 运行这 5 个脚本一次,每个脚本都带有其生成内容的日志,并且能够关闭终端?
我尝试运行下面的脚本但出现错误。
sudo nohup php send-mail.php > mail.txt
-bash: mail.txt: Permission denied
nohup php send-mail.php > sudo mail.txt
-bash: sudo: Permission denied
答案1
您的问题分为两部分。
- 权限被拒绝的情况:您可能会将日志写入普通用户没有根目录写权限的路径中。
- 终端关闭时运行脚本:要使用 nohup 连续运行五个 PHP 脚本并为每个脚本生成日志文件,可以使用以下命令:
nohup php /path/to/script1.php > ~/script1.log 2>&1 & nohup php /path/to/script2.php > ~/script2.log 2>&1 & nohup php /path/to/script3.php > ~/script3.log 2>&1 & nohup php /path/to/script4.php > ~/script4.log 2>&1 & nohup php /path/to/script5.php > ~/script5.log 2>&1 &