É uma funcionalidade do GNU libc, a partir de a página de manual getopt_long :
Long option names may be abbreviated if the abbreviation is unique or is an exact match for some defined option.
Da mesma forma, a interface Argp do GNU libc também permite opções abreviadas (embora seja possível rejeitá-las, se um programa realmente se importa).
Como observado em Opções longas abreviadas no comando linha de xclip , xlib faz a mesma coisa, então xclock -dig -bri
é o mesmo que xclock -digital -brief
.
Eu não recomendaria fazer isso em scripts: sua chamada awk --ver
seria ambígua se eles adicionassem awk --verbose
.
O Python presumivelmente escreveu seu próprio analisador de argumentos, provavelmente para ser portável para sistemas que não usam o glibc. E eles não podem simplesmente pegar emprestado o glibc porque eles não estão usando a licença GNU GPL.