Re[9]: Вывод справки в stderr
От: Pzz Россия https://github.com/alexpevzner
Дата: 14.12.25 11:30
Оценка: +1
Здравствуйте, Marty, Вы писали:

Pzz>>Но cdrecord!


M>Просто использует устоявшиеся соглашения? Вероятно, автор решил, что если одни утилиты будут справку выводить в stderr, а другие — в stdout, то это будет, как минимум, странно и непривычно


Большинство юниксных утилит выводят справку в stdout.

Наверное, в материалах GNU есть даже какой-нибудь гайд на эту тему. Но лень его искать...
Re[9]: Вывод справки в stderr
От: Pzz Россия https://github.com/alexpevzner
Дата: 14.12.25 11:33
Оценка: +1
Здравствуйте, Marty, Вы писали:

M>Просто использует устоявшиеся соглашения? Вероятно, автор решил, что если одни утилиты будут справку выводить в stderr, а другие — в stdout, то это будет, как минимум, странно и непривычно


GNU Coding Standard говорит, опция --help должна вываливать хелп в stdout и завершаться с кодом 0.

https://www.gnu.org/prep/standards/html_node/_002d_002dhelp.html
Re[10]: Вывод справки в stderr
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 14.12.25 11:37
Оценка:
Здравствуйте, Pzz, Вы писали:

M>>Просто использует устоявшиеся соглашения? Вероятно, автор решил, что если одни утилиты будут справку выводить в stderr, а другие — в stdout, то это будет, как минимум, странно и непривычно


Pzz>GNU Coding Standard говорит, опция --help должна вываливать хелп в stdout и завершаться с кодом 0.


Pzz>https://www.gnu.org/prep/standards/html_node/_002d_002dhelp.html


GNU — GNU Not Unix
Маньяк Робокряк колесит по городу
Re[2]: Вывод справки в stderr
От: Stanislaw K СССР  
Дата: 14.12.25 11:57
Оценка: +1
Здравствуйте, novitk, Вы писали:


ЕМ>>Почему изрядная часть unix-like утилит выводит справку в stderr?

N>Оно еще и не 0 в exit code. Если утилита участвует в pipe ты точно хочешь мусор на входе следующего этапа конвейера?

Я точно хочу.
Во первых, возможно, именно в этом и цель (передать справку, ведь её для этого запросили явно).
Во вторых если неожиданно где-то вылезла именно справка, значит скорее всего конвейер сломался (что-то обновилось?), и по внезапной справке можно быстро определить на каком этапе.
Все проблемы от жадности и глупости
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.