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.
Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:programmation:shells:page-man-bash-iii-les-operateurs-de-comparaison-numerique [08/04/2014 13:53] Hypathie créée |
doc:programmation:shells:page-man-bash-iii-les-operateurs-de-comparaison-numerique [30/05/2014 08:53] Hypathie [Opérateurs de comparaison numérique] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ======Page man Bash III, les opérateurs de comparaison numérique====== | + | ======Bash : les opérateurs de comparaison numérique====== |
- | * Objet : du tuto FIXME | + | * Objet : suite de la série de wiki visant à maîtriser bash via les différents caractère spéciaux. |
- | * Niveau requis : FIXME {{tag>débutant avisé}} | + | * Niveau requis : {{tag>débutant}} |
- | * Commentaires : //Contexte d'utilisation du sujet du tuto. // FIXME | + | * Commentaires : //Contexte d'utilisation du sujet du tuto. // |
* 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 : {{tag>en-chantier à-tester à-placer}} - FIXME Pour choisir, voir les autres Tags possibles dans [[:atelier:#tags|l'Atelier]]. | + | * Suivi : {{à-placer}} |
* Création par **Hypathie** 08/04/2014 | * Création par **Hypathie** 08/04/2014 | ||
- | * Testé par <...> le <...> FIXME | + | * 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 !)) FIXME | + | * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=87499#p87499 | Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) |
- | **Nota :** | + | **RAPPEL DU PLAN DE LA SÉRIE : **\\ |
+ | 1) Intro I : [[atelier:chantier:bash-les-differents-caracteres-speciaux|Bash : Introduction]]\\ | ||
+ | |||
+ | 2) chap II : [[atelier:chantier:la-page-man-bash-les-caracteres-speciaux|Bash : Détail et caractères]]\\ | ||
+ | |||
+ | 3) chap III : [[atelier:chantier:la-page-man-bash-ii-les-operateurs-lexicographiques|Bash : les opérateurs lexicographiques]]\\ | ||
+ | |||
+ | 4) chap IV : C'est ici !\\ | ||
+ | |||
+ | 5) chap V : [[atelier:chantier:page-man-bash-iv-symboles-dans-les-calculs-mathematiques|Bash : les symboles dans les calculs]]\\ | ||
+ | |||
+ | 6) chap VI : [[atelier:chantier:page-man-bash-v-les-tableaux|Bash : les tableaux]]\\ | ||
+ | |||
+ | 7) chap VII : [[atelier:chantier:man-bash-vi-les-caracteres-de-transformation-de-parametres|Bash : les caractères de transformation de parametres]]\\ | ||
+ | |||
+ | 8) chap VIII : [[atelier:chantier:bash-vii-globs-etendus-regex|Bash : globs étendus et regex]] | ||
Contributeurs, les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli ! | Contributeurs, les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli ! | ||
Ligne 109: | Ligne 124: | ||
[ 5 -eq 5 ]; echo $? # réponse : 0 car l'expression est vraie | [ 5 -eq 5 ]; echo $? # réponse : 0 car l'expression est vraie | ||
</code> | </code> | ||
+ | |||
+ | ====Conclusion sur les tests ==== | ||
+ | |||
+ | <note> | ||
+ | Rappel:\\ | ||
+ | Les opérateurs de comparaison (crochets) relève d'un mécanisme interne au shell.\\ | ||
+ | La commande test permet elle aussi de faire des tests.\\ | ||
+ | Elle s'utilise avec les mêmes expressions de comparaison mais avec cette syntaxe :\\ | ||
+ | |||
+ | <code> | ||
+ | test expression ou bien [ expression ] | ||
+ | |||
+ | $ test -f /etc/gaga $ [ -f /etc/gaga ] | ||
+ | $ echo $? $ echo $? | ||
+ | 1 1 | ||
+ | $ $ | ||
+ | </code> | ||
+ | Dans les deux cas, le fichier /etc/gaga n'existe pas.\\ | ||
+ | (Si le fichier /etc/gaga existait, le retour serait 0.) | ||
+ | </note> | ||
+ | * Pour aller plus loin : les opérateurs logiques. | ||
+ | Ils s'utilisent avec les tests.\\ | ||
+ | ^ Opérateur ^ Signification ^ | ||
+ | |! | Négation | | ||
+ | |-a | ET | | ||
+ | |-o | OU | | ||
+ | |||
+ | Et dans un ordre précis :\\ | ||
+ | - ! (négation) | ||
+ | - -a (ET) | ||
+ | - -o (OU) | ||
+ | |||
+ | <note important> | ||
+ | Il doit toujours y avoir un espace autour des opérateurs !, -a et -o.\\ | ||
+ | Ne pas prendre -a (opérateur logique) pour un opérateur de test sur les fichiers.\\ | ||
+ | Ni confondre -o (opérateur logique) avec -ot (test pour savoir si un fichier1 est plus ancien qu'un fichier2.\\ | ||
+ | Il est possible de modifier la priorité d'exécution des opérateurs en utilisant des paranthèses. | ||
+ | \(........\) | ||
+ | Les parenthèses doivent être protégées par des antislashes afin de ne pas être interprétées par le shell comme étant un regroupement de commandes. | ||
+ | </note> | ||
+ | * syntaxe : | ||
+ | Le fichier "toto" n'est pas un répertoire : | ||
+ | <code> | ||
+ | [ ! -d /etc/group ] | ||
+ | echo $? | ||
+ | 0 | ||
+ | </code> | ||
+ | |||
+ | Le fichier mon-script existe et est exécutable : | ||
+ | <code> | ||
+ | [ -f mon-script -a -x mon-script ] | ||
+ | echo $? | ||
+ | 0 | ||
+ | </code> | ||
+ | |||
+ | ===Tuto précédent=== | ||
+ | |||
+ | [[atelier:chantier:la-page-man-bash-ii-les-operateurs-lexicographiques|Bash : les opérateurs lexicographiques]] | ||
+ | |||
+ | ===La suite c'est ici : === | ||
+ | |||
+ | [[atelier:chantier:page-man-bash-iv-symboles-dans-les-calculs-mathematiques|Bash : les symboles dans les calculs]] |