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 →
Ceci est une ancienne révision du document !
- Pour choisir, voir les autres Tags possibles dans l'Atelier.
Nota :
Contributeurs, les sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !
Condition | Signification |
---|---|
$chaine1 = $chaine2 | est égal |
$chaîne1 == $chaîne2 | synonyme de = |
$chaine1 != $chaine2 | n'est pas égal à |
$chaine1 < $chaîne2 | avant (selon l'ordre alphabétique ASCII) |
$chaine1 < $chaîne2 | après (ASCII) |
Le shell bash utilise les commandes internes et composées [[ ]] ou [ ] (souvent utilisées avec IF) pour les comparaisons de chaînes de caractères.
C'est pourquoi on trouve souvent les options -z et -a du tableau ci-dessous, ajoutées au tableau ci-dessus :
Condition | Signification |
---|---|
-z $chaine | ne contient rien |
-n $chaine | contient quelque-chose |
-bashismes :
[[ $a == "z*" ]] # vrai si $a est égal à z* [[ $a == z* ]] # vrai si $a commence avec un "z" (reconnaissance de modèles) if [[ "$a" < "$b" ]]
-posix :
[ "$a" == "z*" ] # vrai si $a est égal à z* if [ "$a" \< "$b" ]
Il permet d'effectuer aussi des comparaisons sur les fichiers avec les commandes internes et composées [[ ]] et [ ]] (associées à IF ou non). Les commandes [[ ]] et [ ] suppléent la commande test. Pour les comparaisons de nombres, on peut utiliser aussi la commande test.
if [[ option $FICHIER ]]
test | vérifie si : |
---|---|
-e $nomfichier | le fichier existe |
-d $nomfichier | le fichier est un répertoire |
-f $nomfichier | le fichier est un document |
-L $nomfichier | le fichier est un lien symbolique |
-r $nomfichier | le fichier est lisible |
-w $nomfichier | le fichier est modifiable |
-x $nomfichier | le fichier est exécutable |
$fichier1 -nt $fichier2 | fichier1 est plus récent que fichier2 (newerthan) |
$fichier1 -ot $fichier2 | fichier1 est plus vieux que fichier2 (olderthan) |
Exemple :
#!/bin/bash var="/home/hypathie/Dossier/fichierp1" if [ -e "$var" ] then echo "le fichier existe !" else echo "fichier inexistant !" fi var2="/home/hypathie/Dossier/fichierp1" if [ -s "$var2" ] then echo "non vide !" else echo "vide !" fi