-h является обязательным для * nix. Я бы сказал то же самое для /? в Windows, но программы, доступные для обеих платформ, обычно используют стиль * nix. Вероятно, из-за getopt и друзей.
Некоторые предметы первой необходимости:
-h, --help
-v, --version
-u, --usage
Если приложение вообще изменяет какие-либо файлы:
--dry-run Do not modify any files (but work as if you did)
Если приложение использует файлы конфигурации, опции для использования указанного файла конфигурации или каталога.
Некоторые основные рабочие переключатели для работы в неинтерактивном режиме и выполнения работы:
mysql --execute="SELECT * FROM ..."
cmd.exe /C "dir"