-d
est un opérateur pour tester si le répertoire donné existe ou non.
Par exemple, j'ai un seul répertoire appelé /home/sureshkumar/test/.
La variable de répertoire contient le "/home/sureshkumar/test/"
if [ -d $directory ]
Cette condition est vraie uniquement lorsque le répertoire existe. Dans notre exemple, le répertoire existe donc cette condition est vraie.
Je change la variable de répertoire en "/home/a/b/".Ce répertoire n'existe pas.
if [ -d $directory ]
Or cette condition est fausse. Si je mets le !
devant si le répertoire n'existe pas, alors la condition si est vraie. Si le répertoire existe, alors le if [ ! -d $directory ]
la condition est fausse.
Le fonctionnement du ! L'opérateur est si la condition est vraie, alors il dit que la condition est fausse. Si la condition est fausse, il dit que la condition est vraie. C'est l'oeuvre de ! opérateur.
if [ ! -d $directory ]
Cette condition n'est vraie que si le répertoire $ n'existe pas. Si le répertoire existe, il renvoie false.
Les crochets sont l'exécutable du test, le point d'exclamation est une négation et le -d
L'option vérifie si la variable $directory
est un répertoire.
Du test de l'homme :
-d FILE
FILE exists and is a directory
! EXPRESSION
EXPRESSION is false
Le résultat est une instruction if indiquant "if $directory
n'est pas un répertoire"