Ответ 1
2>
означает "перенаправить стандартную ошибку" в данный файл.
/dev/null
- это нулевой файл. Все, что написано на нем, отбрасывается.
Вместе они означают "выбросить любые сообщения об ошибках".
В чем разница между следующими командами?
ssh myhostname "command1; command2;...commandn;" 2>/dev/null
ssh myhostname "command1; command2;...commandn;"
Что означает 2>
?
что означает /dev/null
? Я где-то читал, что результатом команды будет запись в файл /dev/null
вместо консоли! Это правильно? Мне кажется странным, что имя файла null
!
2>
означает "перенаправить стандартную ошибку" в данный файл.
/dev/null
- это нулевой файл. Все, что написано на нем, отбрасывается.
Вместе они означают "выбросить любые сообщения об ошибках".
1 является стандартным. 2 - stderr.
Затем иногда вы обнаруживаете 2>&1
, что означает перенаправление stderr на stdout.
'/dev/null' по существу означает "в пустоту", отбрасывается. Указанный 2
относится к выходу ошибки, где он должен быть направлен.
2 > означает отправку стандартной ошибки на что-то
/dev/null означает ячейку
1) Выполните все стандартную ошибку до /dev/null (чтобы игнорировать ее и не показывать)
2) Dev null просто указывает на никуда, ничего не связывайте с этим, и он исчезает.
Вы можете рассматривать его как Black Hole для Linux.
Это специальный файл или устройство, которое я могу сказать, что отбрасывает все, что написано на нем. Вы можете использовать его для очистки или удаления любого текстового файла.
Пример:
~ $ cat /dev/null > myNote.txt