LinuxForum.Fans
Тема

Запуск php-скриптов из консоли с &

Автор: u___________4 9 сообщений 9611 просмотров
#83227

Здравствуйте. Почему-то не могу в Ubuntu 10.04 запустить php-скрипт с &. После выполнения команды

php script.php &

Показывается PID процесса, но тут же вываливается "Stopped php script.php". При этом я могу нормально запускать другие программы с &. Например nmap.
Если запускать выполнение script.php без &, то скрипт отлично работает и выполняет всё что нужно.
Не подскажите, как можно решить данную проблему?

#83231

Можно попробовать так
(php script.php & ) >> /dev/null 2>&1

#83292

Да, сработало, спасибо. Это как-то связано с тем что выводит скрипт?

#83311
Белый Тигр написал:
Да, сработало, спасибо. Это как-то связано с тем что выводит скрипт?

Да. Это перенаправление вывода в /dev/null (пустое устр-во или в никуда)
Можно перенаправить в файл
[console](php script.php & ) >> /путь/к/script.log 2>&1[/console]
(перенаправит в script.log)

#83411

Это то я понял :) Я имел в виду, что остановка скрипта в первом моём случае была связана с тем, что скрипт начинал что-то выводить?

#83412

можно и так:
[console] ( php t.php & ) 2>/dev/null
[/console]
у меня, кстати, по всякому работает, в т.ч. и php t.php &
а PID в консоли всегда почему-то выскакивает. у вас не так?
[console]$ echo "hello" &
hello
[1] 23496
[1]+ Done echo "hello"
[/console]

#83520

Так. Но у меня скрипт выполняется примерно часа 2 + выводит кучу информации по ходу выполнения. При запуске через

php script &

У меня выдаётся pid, а затем

[1] Stopped

Почти сразу же

#83568
Белый Тигр написал:
Почти сразу же

а... ясно.
ну тогда делайте как пишется выше, ну не запускать-же по новой :)
(запуск: fg это не падение, это пауза)

PS: у вас там в начале наверное ввод информации? наверное с этим связанно, где-то у меня записано, лень искать ;)

#83637

Нет, ввода нет. Просто сразу начинает выводится текст.
Ну главное что заработало :)

Войдите или зарегистрируйтесь, чтобы ответить.