Назад | Перейти на главную страницу

dev / null и dev / null 2> & 1?

Какая доза означает dev / null и dev / null 2> & 1? если я запустил php -q /http/get_pdf.php

извините за мой короткий вопрос, когда мы запускаем этот файл с URL-адреса, он создает файл .pdf и почту, мы хотим отправить письмо с помощью cron, в этом случае нам нужно запустить один отчет в формате pdf за один раз.

предположим goto url https://example.com/get_pdf.php он спросит у меня почтовый идентификатор, как только мы добавим почтовый идентификатор, он сгенерирует отчет о том, что вы просите из раскрывающегося меню, например, какая распродажа за неделю? это будет почта по идентификатору почты, мы не хотим получать от URL, который мы хотим получить от cron. Может ли же, пожалуйста, помочь мне.

Я предполагаю, что вы ищете разницу между чем-то вроде этого:

$ php -q /http/get_pdf.php > /dev/null

и это:

$ php -q /http/get_pdf.php > /dev/null 2>&1

Первая версия перенаправляет stdout к /dev/null, а второй перенаправляет оба stdout и stderr к /dev/null.

Вы имеете в виду что-то вроде /command >/dev/null 2>&1?

  • /command: будет запущен
  • >/dev/null: перенаправить стандартный вывод в ничто (/dev/null это специальное нулевое устройство, это означает, что вывод не будет отображаться)
  • 2>&1: перенаправлять ошибки на стандартный вывод.

Если вы запускаете это как cron, stdout часто является почтовым отправлением (если возникают ошибки, отправьте письмо администратору)

Когда у вас есть такая команда:

КОМАНДА> / dev / null 2> & 1

Часть «> / dev / null» говорит о перенаправлении всего стандартного вывода из команды в битовое ведро. Часть «2> & 1» говорит о перенаправлении всех стандартных ошибок на стандартный вывод (который, в свою очередь, перенаправляется на / dev / null)

По сути, это подавит весь вывод.