Что делает вывод / dev / null в bash-скриптах?

Часто я сталкиваюсь с небольшими сценариями bash, которые используют этот вид синтаксиса в операторах if:

some command > /dev/null 2>&1

Какова цель вывода на /dev/null, как это, и что делает 2>&1

Кажется, что это работает, но я хотел бы знать, что он делает.

1
задан 29 April 2015 в 20:25

1 ответ

STDIN представлен 0, STDOUT на 1 и STDERR на 2.

/ dev / null - бит-ведро: место, где вы сбрасываете все, что вам не нужно. [!d1 ]

Итак, STDOUT перенаправляется на бит-ведро (мусор), а STDERR перенаправляется туда, где находится STDOUT: бит-ведро.

[ ! d5]

Вы также можете сделать это:

>/dev/null 2>/dev/null
47
ответ дан 26 May 2018 в 00:32
  • 1
    Хорошее объяснение. Я также думаю, что есть ярлык для вышеперечисленного: & amp; & gt; / DEV / нуль – Chip Castle 2 August 2013 в 01:48

Другие вопросы по тегам:

Похожие вопросы: