A mensagem de uso impressa com, por exemplo,
command -?
de um comando Unix vá para stderr ou stdout, e por quê? Ele deve ir para o mesmo local se o usuário cometer um erro com uma opção?
touch -- -l; ls -?
- você realmente recebe uma lista longa como se tivesse passado -l
para ls.
-h
opção para outra coisa que não seja uma mensagem de ajuda, então '-?'
(com as aspas) ou -:
dê uma boa chance de receber uma mensagem de erro (e uso) desde :
e ?
não pode ser opções válidas para qualquer coisa usando getopt(3)
.