Оболочка exec nohup с nohup.out
Выполнение этого кода:
shell_exec('nohup command&');
Или это
shell_exec('nohup command > /path/to/nohup.out 2>&1&');
Но в обоих случаях нет nohup.out. Как я могу запустить nohup с помощью nohup.out через php?
2
Author: Иван Петров, 2015-04-23
1 answers
Shell_exec('команда nohup>/путь/к/nohup.out 2>&1&');
Эта строка будет работать. Просто убедитесь, что у вас есть права на запись в выходную папку. Считайте, что ваша выходная папка /usr/nohup-out
ls -l /usr/nohup-out
Он должен иметь разрешения на запись, чтение и выполнение (rwx). Если нет, сделайте следующее:
sudo chmod -R 777 /usr/nohup-out
Теперь попробуйте выполнить php-файл. Он должен создать файл nohup в папке /usr/nohup-out
.
Пример сценария и результат:
1. date.php:
<?php
shell_exec('nohup date > /usr/nohup-out/nohup.out 2>&1&');
?>
2. Выполнить php из терминала:
php date.php
3. содержимое nohup.out после выполнения
Чт 23 апреля 11:30:28 IST 2015
1
Author: Rajesh N, 2015-04-23 05:56:41