D'une part, --help
n'est pas une commande, c'est un argument qui est souvent donné à une commande pour obtenir de l'aide sur son utilisation. Pendant ce temps, man
est une commande, abréviation de "manuel". Les pages de manuel sont installées par de nombreux programmes et constituent un moyen courant de trouver de l'aide sur les commandes, ainsi que sur les appels système (par exemple, fork()
).
Si un programme installe une page de manuel, elle est toujours accessible via le man
commande, alors que --help
est juste une convention commune, mais n'a pas besoin d'être appliquée—ce pourrait être juste (et seulement) -h
.
man
utilise également généralement un téléavertisseur, tel que less
, automatiquement, ce qui peut faciliter l'affichage et la recherche d'informations.
Enfin, vous mentionnez la programmation Bash dans votre question - rien de tout cela n'est unique à Bash. Bash ne se soucie pas des commandes elles-mêmes ou de leurs arguments pour la plupart.
Dans la plupart des scénarios man
est plus détaillé que --help
. help
donne les options de ligne de commande pour une commande particulière. Mais man
est beaucoup plus détaillé.
Plus man
est un outil de ligne de commande en soi alors que --help
est un argument de ligne de commande pour un outil. Petite différence.
Dans le premier, vous demandez au système de rechercher dans les pages de manuel de l'aide sur la commande. La seconde où vous demandez à la commande de fournir sa propre aide. Les deux seront très certainement différents - généralement la commande fournit un rappel de ses options alors que la page de manuel est une description détaillée.