Comment s'appelle `--`?

23

Récemment, j'ai appris --que le double trait d'union est utilisé pour indiquer à une commande que la liste d'options est terminée et que ce qui suit ne doit pas être considéré comme une option. Alors,

grep --  'search_word' *

rechercherait le donné search_word. Mais vous pourriez voir un comportement inattendu si vous supprimez --et s'il existe un seul fichier commençant par -, ce qui activerait l'option qui correspond aux caractères dans le nom de fichier .

Comment ça --s'appelle? Y a-t-il un terme technique à cela?

mtk
la source
3
Voir le débat sur Pourquoi les têtes d'Unix disent «moins»? puis doublez-le.
manatwork
@manatwork Non, carré! Faut-il dire «moins tiret» ou «tiret moins»?
Gilles 'SO- arrête d'être méchant'
Je viens de le prononcer "-".
dubiousjim
Je rencontre régulièrement des phénomènes cd --et cd -. tandis que cd --signifie essentiellement juste cdet donc se transforme en votre $HOME, cd -signifie mettre votre auto dans le répertoire précédent. Cela devient pratique quand vous le souhaitez, cd ..mais comme avec la disposition du clavier allemand, je le mélange souvent cd --. cd -vous remettra alors. : D
math

Réponses:

15

Le --fonctionne pour les outils qui utilisent getopt(3)pour traiter les arguments de ligne de commande et de nombreuses API qui analysent les options de style POSIX.

À partir de la page de manuel de getopt(3):

L'interprétation des options dans la liste des arguments peut être annulée par l'option `- '(double tiret) qui fait que getopt () signale la fin du traitement des arguments et retourne -1.

Je dirais alors que ça s'appelle double tiret

Matteo
la source
Mais je parie qu'il y a un terme linguistique pour cela.
Rob
3
getopt n'est pas la seule API qui prend en charge "-". La plupart des API qui analysent les options de style POSIX dans la plupart des langues le prennent en charge. Tous les utilitaires POSIX mais echoet [soutenez-le
Stéphane Chazelas
@StephaneChazelas Merci d'avoir édité la réponse
Matteo
5

Les deux seuls noms que j'ai en tête dans la pratique sont "double tiret" pour s'y référer esthétiquement , et "fin d'options" pour s'y référer de manière fonctionnelle .

Chris Down
la source
je l'ai vu aussi appelé «dernière option».
Tim Kennedy