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 →
Ci-dessous, les différences entre deux révisions de la page.
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:shells:bash-vii-globs-etendus-regex [04/06/2014 19:44] Hypathie [Correspondance de motifs avec les expressions rationnelles] |
doc:programmation:shells:bash-vii-globs-etendus-regex [06/07/2014 11:16] Hypathie [Correspondance de motifs avec les expressions rationnelles] |
||
---|---|---|---|
Ligne 5: | Ligne 5: | ||
* Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | ||
* Suivi : {{à-placer}} | * Suivi : {{à-placer}} | ||
- | * Création par **Hypathie** 10/04/2014 | + | * Création par [[user>Hypathie]] 10/04/2014 |
* Testé par <Hypathie> le <Avril 2014> | * Testé par <Hypathie> le <Avril 2014> | ||
- | * Commentaires sur le forum : [[url | Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | + | * Commentaires sur le forum : [[:url-invalide | Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) |
- | **RAPPEL DU PLAN DE LA SÉRIE : **\\ | ||
- | 1) Intro : [[atelier:chantier:bash-les-differents-caracteres-speciaux|Bash : Introduction]] | ||
- | 2) chap I : [[atelier:chantier:la-page-man-bash-les-caracteres-speciaux|Bash : Détail et caractères]] | + | * [[atelier:chantier:bash-les-differents-caracteres-speciaux|Vision d'ensemble]] |
- | + | * [[atelier:chantier:la-page-man-bash-les-caracteres-speciaux|Bash : Détail et caractères]] | |
- | 3) chap II : [[atelier:chantier:la-page-man-bash-ii-les-operateurs-lexicographiques|Bash : les opérateurs lexicographiques]] | + | * [[atelier:chantier:la-page-man-bash-ii-les-operateurs-lexicographiques|Bash : les opérateurs lexicographiques]] |
- | + | * [[atelier:chantier:page-man-bash-iii-les-operateurs-de-comparaison-numerique|Bash : les opérateurs de comparaison numérique]] | |
- | 4) chap III : [[atelier:chantier:page-man-bash-iii-les-operateurs-de-comparaison-numerique|Bash : les opérateurs de comparaison numérique]] | + | * [[atelier:chantier:page-man-bash-iv-symboles-dans-les-calculs-mathematiques|Bash : les symboles dans les calculs]] |
- | + | * [[atelier:chantier:page-man-bash-v-les-tableaux|Bash : les tableaux]] | |
- | 5) chap IV : [[atelier:chantier:page-man-bash-iv-symboles-dans-les-calculs-mathematiques|Bash : les symboles dans les calculs]] | + | * [[atelier:chantier:man-bash-vi-les-caracteres-de-transformation-de-parametres|Bash : les caractères de transformation de parametres]] |
- | + | ||
- | 6) chap V : [[atelier:chantier:page-man-bash-v-les-tableaux|Bash : les tableaux]] | + | |
- | + | ||
- | 7) chap VI : [[atelier:chantier:man-bash-vi-les-caracteres-de-transformation-de-parametres|Bash : les caractères de transformation de parametres]] | + | |
- | + | ||
- | 8) chap VIII : C'est ici ! | + | |
Ligne 71: | Ligne 63: | ||
shopt -s extglob | shopt -s extglob | ||
</code> | </code> | ||
- | Valider puis dans le même terminal : | + | Valider ensuite toujours dans le même terminal : |
<code user> | <code user> | ||
ls ~/Test/!(*jpg|*bmp) | ls ~/Test/!(*jpg|*bmp) | ||
- | #retour: /home/hypathie/Test/nom.txt | + | </code> |
+ | Retour : | ||
+ | <code> | ||
+ | /home/hypathie/Test/nom.txt | ||
</code> | </code> | ||
Ligne 81: | Ligne 76: | ||
<code user> | <code user> | ||
cd ~/Test/ | cd ~/Test/ | ||
- | ~/Test$ ls | + | </code> |
- | + | PUIS : | |
- | #retour: image.bmp image.jpg nom.txt | + | <code user> |
- | + | ls | |
- | ~/Test$ echo !(*jpg|*bmp) | + | </code> |
- | + | Retour : | |
- | #retour: nom.txt | + | <code> |
+ | image.bmp image.jpg nom.txt | ||
+ | </code> | ||
+ | PUIS : | ||
+ | <code user> | ||
+ | echo !(*jpg|*bmp) | ||
+ | </code> | ||
+ | Retour : | ||
+ | <code> | ||
+ | nom.txt | ||
</code> | </code> | ||
Ligne 105: | Ligne 109: | ||
echo "mauvaise correspondance" | echo "mauvaise correspondance" | ||
fi | fi | ||
- | # => mauvaise correspondance | + | |
nom=image.jpg | nom=image.jpg | ||
if [[ "$nom" = *.@(jpg|jpeg) ]] # (ligne 12) | if [[ "$nom" = *.@(jpg|jpeg) ]] # (ligne 12) | ||
Ligne 114: | Ligne 118: | ||
echo "mauvaise correspondance" | echo "mauvaise correspondance" | ||
fi | fi | ||
- | # => bonne correspondance | ||
</code> | </code> | ||
+ | Retour : | ||
+ | <code> | ||
+ | mauvaise correspondance | ||
+ | bonne correspondance | ||
+ | </code> | ||
+ | |||
<note tip> | <note tip> | ||
Quelques remarques sur la ligne 12.\\ | Quelques remarques sur la ligne 12.\\ | ||
Ligne 204: | Ligne 213: | ||
echo "pas de match" | echo "pas de match" | ||
fi | fi | ||
- | |||
- | # retour : match | ||
</code> | </code> | ||
+ | <code> | ||
+ | match | ||
+ | </code> | ||
===Compliquons un peu en utilisant plusieurs autres caractères du tableau ci-dessus :=== | ===Compliquons un peu en utilisant plusieurs autres caractères du tableau ci-dessus :=== | ||
Ligne 224: | Ligne 233: | ||
echo "mauvaise regex" | echo "mauvaise regex" | ||
fi | fi | ||
- | |||
- | # retour : Le nom de l'image correspond à l'expression rationnelle. | ||
</code> | </code> | ||
+ | <code> | ||
+ | Le nom de l'image correspond à l'expression rationnelle. | ||
+ | </code> | ||
===explication=== | ===explication=== | ||