GNU/Linux >> Znalost Linux >  >> Linux

Jak používat operátory testování souborů Bash v Linuxu

Operátoři testování souborů se v Linuxu používají ke kontrole a ověření atributů souborů, jako je vlastnictví nebo zda se jedná o symbolický odkaz. Každý testovací operátor má specifický účel. Nejdůležitější operátory jsou -e a -s. V tomto článku se naučíte testovat soubory pomocí příkazu if následovaného některými důležitými testovacími operátory v Linuxu.

V tomto článku se budeme zabývat následujícími testovacími operátory:

  • Pokud -e testovací operátor
  • Pokud -s testovací operátor
  • Pokud -d testovací operátor
  • Pokud -h testovací operátor
  • Pokud -r test operátor
  • Pokud -O testovací operátor

Použití operátoru if -e

Hlavním cílem použití operátoru testu if-e v Centos 8 je ověřit, zda se konkrétní soubor nachází v adresáři nebo ne. Pokud tedy chcete ověřit existenci souboru pomocí if-e, musíte postupovat podle následujících kroků:

Vytvořte dva nové soubory s názvy  Test.txt  a FileTestOperators.sh. Přípona .sh patří k souboru bash. Obojí můžete vytvořit přímo v domovském adresáři nebo pomocí následujícího příkazu:

$ touch Test.txt
$ touch FileTestOperators.sh

Pokud chcete ověřit, zda je soubor vytvořen či nikoli, použijte následující příkaz:

$ ls -l Test.txt

Můžete vidět, že oba soubory jsou vytvořeny v domovském adresáři.

Otevřete soubor FileTestOperators.sh a zapište si do něj skript, jak je znázorněno na obrázku níže. Inicializovali jsme soubor proměnných a předali jsme mu soubor Test.txt jako hodnotu. V příkazu If máme operátor -e používaný k potvrzení existence souboru Test.txt pomocí souboru proměnné.

Spusťte níže uvedený příkaz a zkontrolujte existenci souboru:

$ bash FileTestOperators.sh

Protože soubor v adresáři existuje, výstup bude True.

Použití operátoru if -s

Účelem použití operátoru if-s test v Centos 8 je ověřit, zda zadaný soubor existuje a je prázdný, nebo ne. Takže pokud to chcete ověřit pomocí if-e, musíte postupovat podle následujících kroků:

Budeme používat stejné soubory s drobnou změnou v souboru FileTestOperators.sh. Stačí změnit operátor -s místo -e v příkazu if.

Spuštěním níže uvedeného příkazu zkontrolujte, zda je soubor prázdný nebo ne:

$ bash FileTestOperators.sh

Protože je soubor prázdný, výstup generovaný operátorem -s je False

Nyní musíte přidat nějaký text do souboru Test.txt, abyste změnili výsledek, jak je znázorněno na obrázku níže.

Znovu spusťte níže uvedený příkaz:

$ bash FileTestOperators.sh

Protože soubor tentokrát není prázdný, výstup generovaný operátorem -s bude mít hodnotu True, jak je znázorněno na obrázku.

Pro ověření, že je soubor prázdný, můžete také použít následující dva příkazy:

$ cat Test.txt
$ file Test.txt

Použití operátoru if -d

Cílem použití operátoru if-d test v Centos 8 je ověřit, zda je konkrétní soubor sám o sobě adresářem nebo ne. Takže pokud to chcete zkontrolovat pomocí if-d, měli byste postupovat podle níže uvedených kroků:

Zde opět používáme stejné oba soubory s mírnou změnou v bash souboru FileTestOperators.sh. Musíme změnit operátor -s na operátor -d v příkazu if, jak je znázorněno na obrázku níže.

Spustí tedy níže uvedený příkaz a zkontroluje, zda je soubor adresářem nebo ne:

$ bash FileTestOperators.sh

Jak víme, soubor Test.txt není adresář, a proto operátor -d vypíše False Test.txt není adresář, jak je znázorněno na obrázku níže.

Použití operátoru if -h

Operátor if-h test se používá ke kontrole, zda je soubor symbolický (soft) odkaz či nikoli. Pokud tedy chcete ověřit existenci souboru pomocí if-h, musíte projít následujícími kroky:

Vytvořte nový soubor s názvem SymbolicFile.sh. Můžete jej vytvořit přímo v domovském adresáři nebo pomocí následujícího příkazu:

$ touch SymbolicFile.sh

Soubor SymbolicFile.sh můžete vidět v domovském adresáři, jak je znázorněno na obrázku níže.

Všechny adresáře a soubory můžete vypsat pomocí příkazu ls. Můžete vidět, že soubor SymbolicFile.sh je také uveden, jak je znázorněno na obrázku.

$ ls –l

Vytvořte symbolický odkaz pomocí jednoduchého příkazu odkazu. V tomto příkazu -s odkazuje na měkký odkaz, SymbolicFile.sh je soubor, jehož odkaz bude vytvořen, a NewSymbolicFile.sh je symbolický odkaz.

$ ln -s SymbolicFile.sh NewSymbolicFile.sh

Znovu vypište všechny adresáře a soubory. Můžete vidět, že byl vytvořen měkký odkaz.

Opět tedy používáme soubor bash FileTestOperators.sh s mírnou změnou. Změňte operátor -d na operátor -h v příkazu if. Tentokrát musíme změnit i název souboru. Musíme použít soubor, který je samotným symbolickým odkazem, např. NewSymbolicFile.sh.

Oba soubory můžete vidět na obrázku níže.

Nyní spusťte níže uvedený příkaz:

$ bash FileTestOperators.sh

Jak víme, soubor NewSymbolicFile.sh je symbolický odkaz, proto operátor -h zobrazuje výstup True NewSymbolicFile.sh je symbolický odkaz, jak je znázorněno na obrázku níže.

Použití operátoru if -r

Operátor if -r test se používá ke kontrole čitelnosti souboru, např. soubor je čitelný nebo ne. Takže pokud to chcete zkontrolovat pomocí if-r, musíte postupovat podle těchto kroků:

Opět používáme soubor Bash Test.txt a FileTestOperators.sh s mírnou změnou. Změňte operátor -h na operátor -r v příkazu if a přiřaďte souboru Test.txt jako hodnotu souboru proměnné.

Nyní spusťte níže uvedený příkaz:

$ bash FileTestOperators.sh

Jak víme, soubor Test.txt je čitelný, takže operátor -r vypíše True! Test.txt je čitelný.

Poznámka :Použijte operátory -w a -x k ověření, zda je soubor zapisovatelný a spustitelný či nikoli.

Použití operátoru if -O

Operátor testu if -O se používá ke kontrole, zda soubor vlastní aktuální uživatel nebo ne. Chcete-li to ověřit pomocí if-O, musíte projít těmito kroky:

Opět používáme soubor Bash Test.txt a FileTestOperators.sh s malou změnou. Změňte operátor -r na operátor -O v příkazu if a přiřaďte soubor Test.txt jako hodnotu souboru proměnné.

Nyní spusťte níže uvedený příkaz:

$ bash FileTestOperators.sh

Protože víme, že soubor Test.txt již vlastní aktuální uživatel, takže operátor -O vypíše True Test.txt je vlastněn aktuálním uživatelem.

Závěr

V tomto článku jste se dozvěděli o nejdůležitějších a různých operátorech testování souborů a jejich práci v Centos 8.  Doufám, že nyní dokážete vytvářet soubory, kontrolovat existenci souborů, kontrolovat čitelnost souborů, kontrolovat vlastnictví souborů, a vytváření měkkých odkazů. Po důkladném sledování tohoto článku se uživatelé mohou cítit pohodlně.


Linux
  1. Jak zkontrolovat, zda soubor nebo adresář existuje v Bash

  2. Jak používat příkaz Tar v Linuxu

  3. Jak zkontrolovat syslog v Bash na Linuxu?

  1. Jak používat příkaz md5sum v Linuxu

  2. Jak používat dotykový příkaz v Linuxu

  3. Jak používat příkaz Linux head

  1. Jak používat příkaz Linux diff

  2. Jak používat Linux rm Command s příklady

  3. Jak používat příkaz Truncate v Linuxu