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

Bash : Les opérateurs de test sur les paramètres

Nota :

Contributeurs, les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !

Introduction

Dans la page du manuel de bash, les opérateurs des commandes de test sont nommées primitives.

Bash dispose de plusieurs commandes pour réaliser des tests sur des paramètres.

  • Les commandes internes [ et test.
  • Et la commande composée [[.
  • Les commandes [ et test sont équivalentes.
  • Les commandes [ et test sont disponibles dans leurs versions externe : /usr/bin/[ et /usr/bin/test.
    • Elles ont toutes les deux la même page de manuel (man [ ou man test).
  • Les commandes internes disposent de primitive que n'ont pas les commandes externes.
Rappels :
  • Une commande de test renvoie le code de retour 0 (considérer comme vrai) lorsque le test réussi et 1 (considérer comme faux) lorsqu'il échoue.
  • Le code retour d'une commande est mémorisé dans le paramètre spécial $?.
  • L'opérateur de contrôle && exécute la commande suivante, si la commande précédente à renvoyée un code de retour égale à 0.
  • L'opérateur de contrôle || exécute la commande suivante, si la commande précédente à renvoyée un code de retour supérieur à 0.

Les commandes de test disposent de deux primitives unaires pour tester les paramètres.

Synopsis

  • test OP nom_paramètre
  • [ OP nom_paramètre ]
  • [[ OP nom_paramètre ]]
  • Avec :
    • Nom_paramètre est sujet au développement des paramètres.
    • OP, l'un des opérateur du tableau suivant.
Liste des primitives de test sur les paramètres
Primitives Retours
-v Vrai si le paramètre existe.
-R Vrai si le paramètre est une référence de nom.

Exemples

Testons si la variable var existe.

var="Debian Facile"		# var existe et n'est pas une chaîne vide.
[ -v var ]	; echo $?
 
var=				# var existe et est une chaîne vide.
test -v var	; echo $?
 
unset var			# Destruction de var (var n’existe plus).
[[ -v var ]]	; echo $?
0
0
1
Une référence de nom est un paramètre qui mémorise le nom d'un autre paramètre.
Il est nécessaire d'utiliser la commande declare -n pour construire une référence de nom.

Testons si la variable v est une référence de nom.

var="Debian GNU Linux"
declare -n v=var
 
echo var=$var
echo v=$v
v="Debian Facile"
echo var=$var
 
[ -R var ] ; echo $?
[[ -R v ]] ; echo $?
 
declare -p var v
 
unset var v
var=Debian GNU Linux
v=Debian GNU Linux
var=Debian Facile
1
0
declare -- var="Debian Facile"
declare -n v="var"

Tuto précédent

La suite c'est ici

1)
N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !
atelier/chantier/bash/les-operateurs-sur-parametres.txt · Dernière modification: 21/02/2023 02:06 par agp91

Pied de page des forums

Propulsé par FluxBB