GNU/Linux >> Tutoriels Linux >  >> Linux

Quelle est la signification de ` ! -d` dans cette commande Bash ?

-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"


Linux
  1. Quelle est la signification de *nix ?

  2. Quelle est la signification d'un double signe dollar dans bash/Makefile ?

  3. '&&' vs '&' avec la commande 'test' dans Bash

  4. À quoi sert $# dans Bash

  5. Quelle est la signification de l'adresse 10.0.0.1/24 de mon ordinateur (à partir de la commande ip addr) ?

Comment utiliser la commande de lecture Bash

Qu'est-ce que la commande Linux Watch + Exemples

Qu'est-ce que la commande kill sous Linux ?

La commande Linux find Directory :Explication

Qu'est-ce que la commande d'exportation est censée faire sous Linux ?

Que fait le -e dans un bash shebang ?