(→récupérer une valeur dans un fichier contenant cle=valeur, avec une cle unique)  | 
		 (→Truc et astuces)  | 
		||
| (3 versions intermédiaires masquées) | |||
| Ligne 28 : | Ligne 28 : | ||
*l'option -n correspond a silencieux. Avec p pour print en fin de commande, seul les lignes sélectionnés sont affiché.  | *l'option -n correspond a silencieux. Avec p pour print en fin de commande, seul les lignes sélectionnés sont affiché.  | ||
*l'inconvénient de cette commande est qu'elle renvoi tout ce qui ce trouve après la clé+espaces ou tabulation+caractère de séparation. Notamment les commentaires si vous en avez mis sur la même ligne  | *l'inconvénient de cette commande est qu'elle renvoi tout ce qui ce trouve après la clé+espaces ou tabulation+caractère de séparation. Notamment les commentaires si vous en avez mis sur la même ligne  | ||
| - | + | <br>  | |
| - | Ici,les commentaires se trouvant sur la même ligne sont supprimé:<pre>sed '/^cle[ \t]*[:=|][ \t]*/!d;s/  | + | Ici,les commentaires se trouvant sur la même ligne sont supprimé:<pre>sed '/^cle[ \t]*[:=|][ \t]*/!d;s/[ \t]*//g;s/^cle[:=|]//;s/#.*//g' fichier.ini</pre>  | 
| - | *<b>/^cle[ \t]*[:=|][ \t]*/!d</b>   | + | *<b>/^cle[ \t]*[:=|][ \t]*/!d</b> sélectionne la ligne commençant par cle avec le séparateur et supprime les autres  | 
| - | *<b>s/  | + | *<b>s/[ \t]*//g</b> supprime les tabulations et espaces de la ligne.  | 
| - | *<b>s/  | + | *<b>s/^cle[:=|]//</b> supprime la cle et le séparateur  | 
| + | *<b>s/#.*//g</b> supprime les commentaires commençant par #  | ||
Sommaire | 
http://www.commentcamarche.net/faq/9559-sed-introduction-a-sed-part-i 
http://www.commentcamarche.net/faq/9559-sed-introduction-a-sed-part-ii 
http://www.commentcamarche.net/faq/9559-sed-introduction-a-sed-part-iii 
http://doc.ubuntu-fr.org/sed 
http://www.corporesano.org/doc-site/grepawksed.html
http://sed.sourceforge.net/sed1line_fr.html
[ ] une alternative de caractere. [dzYTP] indique qu'il s'agit d'un caractere parmis dzYTP.
\t pour tabulationlation. a mettre a la fin d'une sequence entre crochet: [ \t]* correspond a 0 ou une infinité d'espaces ou tabulations qui se suivent
Le séparateur peut être = : |
sed -n 's/^cle[ \t]*[:=|][ \t]*//p' fichier.ini
sed '/^cle[ \t]*[:=|][ \t]*/!d;s/[ \t]*//g;s/^cle[:=|]//;s/#.*//g' fichier.ini