logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
doc:programmation:shell:les-metacaracteres [12/09/2010 16:49]
127.0.0.1 édition externe
doc:programmation:shell:les-metacaracteres [25/03/2015 13:30]
milou [Les métacaractères, ou globs, ou encore patterns]
Ligne 1: Ligne 1:
 ====== Les métacaractères,​ ou globs, ou encore patterns ====== ====== Les métacaractères,​ ou globs, ou encore patterns ======
 +
 +  * Objet : Les métacaractères,​ ou globs, ou encore patterns
 +  * Niveau requis :​{{tag>​débutant avisé}}
 +  * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-)
 +  * Commentaires :
 +  * Suivi : {{tag>​à-tester}}
 +    * Création par [[user>​MaTTuX_]] le 17/01/2009
 +    * Testé par .... le ....
 +  * Commentaires sur le forum : [[Lien vers le forum |C'est ici]]((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
 +
 +===== Présentation ===== 
  
 Les shells de type bourne (comme **Bash**, **Zsh**, **Ksh**, **Dash**...) supportent une syntaxe Les shells de type bourne (comme **Bash**, **Zsh**, **Ksh**, **Dash**...) supportent une syntaxe
Ligne 10: Ligne 21:
 L'​astérisque signifie "​n'​importe quelle chaîne de n'​importe quels caractères"​ L'​astérisque signifie "​n'​importe quelle chaîne de n'​importe quels caractères"​
  
-<​code ​bash+<​code ​user
-echo *</​code>​+echo *</​code>​
 affiche le nom de tous les fichiers du répertoire. affiche le nom de tous les fichiers du répertoire.
  
Ligne 19: Ligne 30:
 ---- ----
 \\  \\ 
-<​code ​bash+<​code ​user
-for f in *; do echo "​$f";​ done</​code>​+for f in *; do echo "​$f";​ done</​code>​
 Même chose, mais en faisant une boucle. Il sera affiché un fichier par ligne Même chose, mais en faisant une boucle. Il sera affiché un fichier par ligne
  
 ---- ----
 \\  \\ 
-<​code ​bash+<​code ​user
-mv /​repertoire/​*.pdf /​autre/​part</​code>​+mv /​repertoire/​*.pdf /​autre/​part</​code>​
 déplacer tout les fichiers pdf de "/​repertoire"​ et les placer dans "/​autre/​part"​ déplacer tout les fichiers pdf de "/​repertoire"​ et les placer dans "/​autre/​part"​
  
Ligne 40: Ligne 51:
  
 Imaginons que nous nous retrouvions avec les fichiers : Imaginons que nous nous retrouvions avec les fichiers :
-<​code ​bash+<​code ​user
-ls +ls</​code>​ 
-toto    titi    tata    test    tintin ​   milou +Affiche : 
-$+<code bash>toto    titi    tata    test    tintin ​   milou 
 </​code>​ </​code>​
  
 Nous voulons n'​afficher que les fichiers dont les noms font quatre lettres de longueur : Nous voulons n'​afficher que les fichiers dont les noms font quatre lettres de longueur :
-<​code ​bash> +<​code ​user>ls ????</​code>​ 
-ls ???? +Affiche : 
-tata    test    titi    toto +<code bash>tata    test    titi    toto
-$+
 </​code>​ </​code>​
  
Ligne 58: Ligne 69:
  
 Nous pouvons aisément faire, par exemple : Nous pouvons aisément faire, par exemple :
 +<code user>
 +ls t?​t?</​code>​
 +Affiche :
 <code bash> <code bash>
-$ ls t?t? 
 tata    titi    toto tata    titi    toto
-$+
 </​code>​ </​code>​
  
Ligne 83: Ligne 96:
  
 La liste des fichiers : La liste des fichiers :
-<​code ​bash>ls+<​code ​user>ls</​code>​ 
 +Affiche : 
 +<code bash>
 tata    titi    toto    test    tintin ​   milou</​code>​ tata    titi    toto    test    tintin ​   milou</​code>​
  
 La commande avec les crochets : La commande avec les crochets :
 +<code user>
 +ls t[oi]t[oi]</​code>​
 +Affiche :
 <code bash> <code bash>
-$ ls t[oi]t[oi] 
 titi    toto titi    toto
-$+
 </​code>​ </​code>​
  
 Génial ! Mais, voyons ce qu'il se passe lorsqu'​un fichier au nom inattendu montre le bout de son nez : Génial ! Mais, voyons ce qu'il se passe lorsqu'​un fichier au nom inattendu montre le bout de son nez :
-<​code ​bash+<​code ​user
-touch tito</​code>​+touch tito</​code>​
  
 Vous savez qui c'est Tito, n'est ce pas ? :-) Vous savez qui c'est Tito, n'est ce pas ? :-)
  
 +<code user>
 +ls</​code>​
 +Affiche :
 <code bash> <code bash>
-$ ls 
 tata    test    titi    tito    toto    tintin ​   milou</​code>​ tata    test    titi    tito    toto    tintin ​   milou</​code>​
  
 +<code user>
 +ls t[oi]t[oi]</​code>​
 +Affiche :
 <code bash> <code bash>
-$ ls t[oi]t[oi] 
 titi    tito    toto titi    tito    toto
-$ 
 </​code>​ </​code>​
  
 C'est déjà intéressant,​ mais il y a mieux : \\ C'est déjà intéressant,​ mais il y a mieux : \\
 la possibilité d'​utiliser des ''​groupes''​ de lettres dans les expressions entre crochets : la possibilité d'​utiliser des ''​groupes''​ de lettres dans les expressions entre crochets :
-<​code ​bash+<​code ​user
- ls [a-z][a-z]</​code>​+ls t[a-z]t[a-z]</​code>​ 
 + 
 +<​code>​ 
 +tata  titi  tito  toto 
 +</​code>​
  
  
Ligne 119: Ligne 143:
 Voilà, vous avez tout en main pour comprendre les **globs** basiques. Voilà, vous avez tout en main pour comprendre les **globs** basiques.
  
-Pour plus d'​informations,​ n'​oubliez pas : +Pour plus d'​informations,​ n'​oubliez pas le manuel ​
-   ​man <votreshell>+<code user>man nom-du-programme</​code>​ 
 + 
 +exemple : 
 +<code user>man mkdir</​code>​ 
 +Affiche : 
 +<code bash>​NAME 
 +       mkdir - make directories 
 + 
 +SYNOPSIS 
 +       mkdir [OPTION]... DIRECTORY... 
 + 
 +DESCRIPTION 
 +       ​Create the DIRECTORY(ies),​ if they do not already exist.</​code>​ 
 +        
 +===Avoir le man en français=== 
 +Non recommandé : 
 +<code root>​apt-get install manpages-fr</code>
  
 Plus tard nous verrons quelques concepts de **globs** plus avancés. Plus tard nous verrons quelques concepts de **globs** plus avancés.
 +
 +===== Liens =====
 +
 +  * [[:​doc:​programmation:​shell:​regexp | regexp ou Regular Expression ou Expression Régulière]]
doc/programmation/shell/les-metacaracteres.txt · Dernière modification: 03/03/2017 15:26 par debianux

Pied de page des forums

Propulsé par FluxBB