Vérifier la taille d'un fichier avec test -s
Dans cette étape, vous apprendrez à vérifier si un fichier existe et n'est pas vide en utilisant la commande test
avec l'option -s
. La commande test
est une commande intégrée au shell utilisée pour évaluer des expressions conditionnelles. Elle est souvent utilisée dans les scripts shell pour prendre des décisions.
L'option -s
avec test
vérifie si un fichier existe et a une taille supérieure à zéro (c'est-à-dire qu'il n'est pas vide).
Tout d'abord, créons un fichier vide et un fichier non vide dans votre répertoire ~/project
.
Ouvrez votre terminal s'il n'est pas déjà ouvert. Vous devriez être dans le répertoire ~/project
par défaut.
Créez un fichier vide nommé empty_file.txt
:
touch empty_file.txt
Maintenant, créez un fichier nommé non_empty_file.txt
et ajoutez-y du texte en utilisant la commande echo
et l'opérateur de redirection >
. L'opérateur >
redirige la sortie d'une commande vers un fichier. Si le fichier n'existe pas, il est créé. S'il existe, son contenu est écrasé.
echo "This file has content." > non_empty_file.txt
Maintenant, utilisons la commande test -s
pour vérifier ces fichiers. La commande test
ne produit pas de sortie en cas de succès. Elle signale le succès ou l'échec en utilisant son code de sortie (exit status). Un code de sortie de 0
signifie succès (la condition est vraie), et un code de sortie non nul signifie échec (la condition est fausse).
Nous pouvons vérifier le code de sortie de la commande précédente en utilisant la variable spéciale $?
.
Vérifiez le fichier vide :
test -s empty_file.txt
echo $?
Vous devriez voir la sortie 1
, indiquant que la condition (le fichier existe et n'est pas vide) est fausse pour empty_file.txt
.
Maintenant, vérifiez le fichier non vide :
test -s non_empty_file.txt
echo $?
Vous devriez voir la sortie 0
, indiquant que la condition est vraie pour non_empty_file.txt
.
C'est une méthode fondamentale pour vérifier les propriétés des fichiers dans la programmation shell. Vous pouvez l'utiliser pour vous assurer qu'un fichier contient du contenu avant de tenter de le traiter.
Cliquez sur Continuer pour passer à l'étape suivante.