Кодировка в линуксе UTF-8 (часто, как правило).
Есть стандарт IEEE Std 1003.1™-2017 (он же POSIX.1), который описывает что
у программ вообще бывают аргументы командной строки. Это цепочки символов, разделённых пробелами.
Там ещё надо поразбираться что и как, и обязательно ли именно пробелами, но это всё детали bash и неважно.
Есть более специфичный стандарт System V 64 ABI, в котором написано всё то же самое, но более конкретно.
Есть стандарт на язык Си (это для красоты):
https://en.cppreference.com/w/c/language/main_function
И есть документация к конкретным реализациям (gcc или clang),
которые так или иначе должны опираться на System V 64 ABI, как должен это делать и ассемблерный код.
Что в этом хорошого, или наблюдаемого:
1) теперь мы точно знаем, что такое "аргумент" (и если это не то же самое, что "параметр", то надо искать определение параметра)
2) мы видим, что англоговорящие не ленятся переписать документы по несколько раз для каждого из применений.
Мы не пишем документы вообще (не странно ли?)
Ну так вот. Раз эти самые аргументы могут быть мультибайтными, и могут быть в UTF-8, они могут быть из русских букв.
Поэтому глядя на GNU Guidelines с его --help возникают вопросы:
1) а как это по-нашему:
--справка
или
--помощь
2) почему они это не интернационализировали
3) что будет если выводить страницы man в зависимости от локали (вместо того, чтобы зашивать в программу копию текста),
какие при этом минусы?
Кто вообще видел опыт подобной русификации аргументов?