La plupart des commandes unixoïdes proposent des alternatives courtes et longues pour les options de ligne de commande, comme ls -a
et ls --all
, ou ls -A
et ls --almost-all
. Pourquoi ces deux façons existent-elles? L'un est plus court à taper, l'autre est plus facile à lire et à comprendre. Mais chaque fois que j'écris un script shell, je dois décider lequel je veux utiliser. Est-il connu pourquoi les deux alternatives existent? Lequel était le premier, pourquoi l'autre a été présenté. Sous DOS / Windows par exemple, il n'y a presque que des options d'une lettre insensibles à la casse.
23
ls -BartSimpsonIsJustCool
(ouGreat
si vous êtes sur Solaris.I
argument est l'-I
option, donc cela ne fait une différence que si vous avez un fichier appelésJustCool
dans le répertoire courant. La-BartSimpson
pièce peut être réorganisée, sauf que leS
(trier par taille) doit rester après let
(trier par date). N'a égalementm
aucun effet lorsquen
ouo
sont présents. Donc, la commande est équivalente àls -BSainopsr
, et si je n'ai rien oublié, vous ne pouvez pas supprimer une autre lettre pour obtenir la même sortie et vous pouvez réorganiser ces lettres librement.gzip -9 filename
par exemple.Vous pourriez deviner que c'est une question de goût. Lorsque vous tapez sur la ligne de commande, une option courte peut être préférée, en particulier dans le cas des options run-together (par exemple
ls -AL
). Les options longues sont meilleures pour transmettre l'intention, vous n'avez donc pas besoin de consulter la page de manuel lorsque vous lisezls --almost-all --dereference
.Naturellement, au fur et à mesure que vous acquérez de l'expérience, vous pouvez apprendre que les options courtes
-A
et-L
courtes sont suffisamment connues et ne nécessitent pas cette documentation supplémentaire. Surtout dans une commande complexe qui peut combiner plusieurs commandes de manière intéressante avec l'évaluation, la redirection, etc. Dans un tel cas, vous pourriez préférer la brièveté à la documentation.la source
Un autre objectif que je peux voir en ayant différentes façons de spécifier les paramètres (court et long) est que lors de la frappe, les gens en ligne de commande Unix / Linux aiment avoir des commandes aussi courtes que possible. Cependant, ceux-ci peuvent devenir cryptiques, et si un script est écrit en utilisant ces versions courtes, ils peuvent devenir difficiles à comprendre à l'avenir. L'utilisation de la version longue peut rendre la commande SAME plus lisible et compréhensible par quelqu'un qui n'est pas le gourou de cette commande, surtout si cette commande est en fait un script écrit localement par opposition à une commande bien connue.
la source