GNU/Linux >> Belajar Linux >  >> Linux

Apa arti dari `! -d` dalam perintah Bash ini?

-d adalah operator untuk menguji apakah direktori yang diberikan ada atau tidak.

Misalnya, saya hanya memiliki direktori bernama /home/sureshkumar/test/.

Variabel direktori berisi "/home/sureshkumar/test/"

if [ -d $directory ]

Kondisi ini benar hanya jika direktori tersebut ada. Dalam contoh kita, direktori ada sehingga kondisi ini benar.

Saya mengubah variabel direktori menjadi "/home/a/b/". Direktori ini tidak ada.

if [ -d $directory ]

Sekarang kondisi ini salah. Jika saya meletakkan ! di depan jika direktori tidak ada, maka kondisi if benar. Jika direktori memang ada maka if [ ! -d $directory ] kondisi salah.

Pengoperasian ! operator adalah jika kondisinya benar, maka dikatakan kondisinya salah. Jika kondisinya salah maka dikatakan kondisinya benar. Ini adalah karya! operator.

if [ ! -d $directory ]

Kondisi ini benar hanya jika direktori $ tidak ada. Jika direktori tersebut ada, ia mengembalikan false.


Tanda kurung adalah tes yang dapat dieksekusi, tanda seru adalah negasi, dan -d opsi memeriksa apakah variabel $directory adalah sebuah direktori.

Dari man test:

-d FILE
       FILE exists and is a directory

! EXPRESSION
       EXPRESSION is false

Hasilnya adalah pernyataan if yang mengatakan "if $directory bukan direktori"


Linux
  1. Perintah "eval" Di Bash?

  2. Memahami Arti `$_`?

  3. Apa arti dari *nix?

  1. Apa arti dari tanda dolar ganda di bash/Makefile?

  2. '&&' vs. '&' dengan perintah 'test' di Bash

  3. Garis miring dan perintah rsync

  1. Menggunakan –exclude Dengan Perintah Du?

  2. Apa arti alamat 10.0.0.1/24 komputer saya (dari perintah ip addr)?

  3. Apa perintah ekspor yang seharusnya dilakukan di Linux?