Argument -- dans un shell UNIX

Argument -- dans un shell UNIX - Shell/Batch - Programmation

Marsh Posté le 05-03-2010 à 15:22:22    

A quoi sert le "--" dans une commande :
 
print -r -- $filename
 
 
google ne comprend pas quand je lui donne --, "--",  \-\- :(


---------------
Lexi lin gua @ traducteurs FR DE ES IT GB
Reply

Marsh Posté le 05-03-2010 à 15:22:22   

Reply

Marsh Posté le 05-03-2010 à 15:31:21    

Traditionnellement, "-<lettre>" et "--<mot>".

Reply

Marsh Posté le 05-03-2010 à 15:35:04    

là c'est "--" et rien de collé derriere, mais avec une chaine de caractere qui suit :/

 

et c'est du simple shell /bin/sh

Message cité 1 fois
Message édité par jm1981 le 05-03-2010 à 15:35:29

---------------
Lexi lin gua @ traducteurs FR DE ES IT GB
Reply

Marsh Posté le 05-03-2010 à 17:29:57    

jm1981 a écrit :

là c'est "--" et rien de collé derriere, mais avec une chaine de caractere qui suit :/
 
et c'est du simple shell /bin/sh



---------------
Lexi lin gua @ traducteurs FR DE ES IT GB
Reply

Marsh Posté le 05-03-2010 à 21:08:33    

Souvent, c'est pour marquer la fin des flags. Imagine que tu ais un fichier dont le nom commence par un tiret (par exemple : -config.cfg) : si tu écris "print -r -config.cfg", la commande va t'indiquer qu'elle ne connait pas ce flag -config.cfg. En mettant le --, tu indiques qu'il n'y a pas de flag supplémentaire et que ce qui trouve après doit être considéré comme un nom de fichier :)  
On trouve ca pour plusieurs commandes (rm ...), j'imagine que c'est aussi le cas ici.

Reply

Marsh Posté le 06-03-2010 à 10:34:45    

mrbebert a écrit :

Souvent, c'est pour marquer la fin des flags. Imagine que tu ais un fichier dont le nom commence par un tiret (par exemple : -config.cfg) : si tu écris "print -r -config.cfg", la commande va t'indiquer qu'elle ne connait pas ce flag -config.cfg. En mettant le --, tu indiques qu'il n'y a pas de flag supplémentaire et que ce qui trouve après doit être considéré comme un nom de fichier :)  
On trouve ca pour plusieurs commandes (rm ...), j'imagine que c'est aussi le cas ici.


 
Ou, autre exemple, si tu veux passer un nombre négatif comme argument pour une commande quelconque
commande -5   => la commande croira que tu lui passes l'option 5
commande -- -5 => le double tiret indique au shell que ce qui suit n'est plus de l'option mais de l'argument


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 08-03-2010 à 21:48:40    

Reply

Marsh Posté le 23-03-2010 à 10:41:00    

Ah bah ... merci mrbebert et Sve@r !  
 
Me coucherai moins con ce soir et ça vite me servir cette petite précision !!!
 
Viva Hardware.fr ^^


---------------
En programmation, quand t'as un problème et qu'il n'y a que deux solutions valides, seule la troisième fonctionne !
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed