Controlla Bash se esiste la directory

Controlla Bash se esiste la directory

Le directory e le cartelle sono le parti principali e abbastanza importanti di qualsiasi sistema operativo. Senza le directory e i file, il nostro sistema non viene completato. Le directory vengono utilizzate per archiviare i sotto-conduttori e i file che contengono dati per la sicurezza e il lavoro personale. All'interno del sistema operativo Linux, abbiamo anche lo stesso file system i.e., Directory e sotto-conduttori. La programmazione bash ha elaborato alcuni dei comandi e delle dichiarazioni molto semplici per verificare se esiste la directory specifica di un file. Pertanto, abbiamo deciso di scrivere questo articolo per verificare se la directory esiste nel nostro sistema Linux o no.

Esempio 01: controlla se esiste un file

Iniziamo con l'esempio di base. Daremo uno sguardo al controllo di un semplice file nel nostro sistema Linux prima i.e., Se esiste o no. Pertanto, abbiamo creato un nuovo file di tipo di testo chiamato "nuovo.txt "all'interno della cartella di casa di Ubuntu con l'istruzione" Touch ". Abbiamo aggiunto un testo a una riga nel file e lo abbiamo visualizzato sulla shell usando l'istruzione "Cat" mostrata di seguito. L'output del comando di seguito è allegato nell'immagine.

$ TOUCT NUOVO.TXT
$ cat nuovo.TXT

Ora è il momento di creare un nuovo file bash con l'istruzione "tocco" denominata "direc.sh "come sotto. Dobbiamo aprire questo file vuoto per iniziare la codifica. Per questo, abbiamo usato l'istruzione "Nano" per lanciarla all'interno del GNU Nano Editor. L'output del comando di seguito è allegato nell'immagine.

$ TOUCT Direc.sh
$ nano direc.sh

Ora, il file vuoto è stato aperto nel nano editor. All'interno della prima riga di codice, abbiamo inizializzato una variabile di file "F" con un percorso a un file "nuovo.txt "come"/home/linux/new.TXT". La dichiarazione "if-then" di bash è stata utilizzata qui per verificare se il file "è nuovo.txt ”esiste o no. La clausola "if" viene avviata con la parola chiave "test" seguita dal flag "-f" per i file. All'interno di virgole invertite, abbiamo aggiunto la variabile "$ f". Successivamente, la clausola "allora" è iniziata con l'istruzione "eco" usando il nome della variabile per mostrare se esiste o no. La parte "allora" dell'istruzione "if-then" verrà eseguita solo quando la condizione "if" sarà vera.

Eseguiamo il file bash utilizzando la parola chiave "bash" seguita dal nome di un file "direc.sh". Poiché il file esiste nella home directory del nostro sistema, quindi ha eseguito l'istruzione Echo e sta dimostrando che il file esiste. L'output del comando di seguito è allegato nell'immagine.

$ Bash Direc.sh

La stessa cosa può essere ottenuta con l'uso di parentesi quadrate attorno alla condizione della clausola "if" senza usare la parola chiave "test" come mostrato di seguito. Eseguiamolo per vedere il suo risultato nella schermata di uscita Bash all'interno della shell.

Dopo aver eseguito questo codice aggiornato, abbiamo ottenuto lo stesso risultato i.e. il file esiste. L'output del comando di seguito è allegato nell'immagine.

$ Bash Direc.sh

Esempio 02: controlla se esiste la directory

Diamo un'occhiata al codice utilizzato per verificare se la directory della cartella esiste nel nostro sistema o no. Per questo, useremo una cartella puramente nuova. Pertanto, all'interno dell'area di query della shell del terminale, abbiamo provato il comando "MKDIR" per creare una nuova directory denominata "Nuovo". Questa directory appena creata verrà utilizzata all'interno del nostro codice per verificare se esiste o no. Il comando Elenco viene eseguito per vedere tutte le directory e i file esistenti nella cartella domestica. Possiamo vedere la "nuova" directory elencata nell'output mostrato sotto la cartella "musica" e dopo i "download". L'output del comando di seguito è allegato nell'immagine.

$ mkdrir nuovo
$ ls

Apriamo lo stesso "Direc.File Sh "in Nano Editor di Ubuntu per creare un nuovo codice. Dopo l'avvio del file, dobbiamo creare una nuova variabile di directory "D" che tiene un percorso a una directory appena creata denominata "Nuovo" come "/Home/Linux/New". Il lavoro complessivo per verificare l'esistenza della directory è stato svolto all'interno della dichiarazione di bash "if-then-else". Quindi, l'istruzione "if" è stata avviata con la condizione per controllare la directory in un sistema utilizzando il flag "-d" per "directory" insieme alla variabile della directory in virgole invertite. Questa condizione è stata utilizzata all'interno delle staffe quadrate. Se la condizione è stata soddisfatta e esiste la directory, la dichiarazione "allora" verrà eseguita insieme alla sua dichiarazione "eco". Altrimenti, la parte "else" della dichiarazione verrà utilizzata insieme alla sua dichiarazione "eco" che mostra che il file non esiste. L'istruzione complessiva sarà chiusa dalla parola chiave "FI" come mostrato di seguito.

Ora è il momento di eseguire il nostro codice bash nella shell del terminale usando la query "bash" mostrata nell'immagine. Dopo averlo eseguito, abbiamo ricevuto il messaggio di successo che mostra che la directory esiste. L'output del comando di seguito è allegato nell'immagine.

$ Bash Direc.sh

Se si desidera ottenere l'esecuzione della parte altro nel terminale della shell, è necessario eliminare la directory in modo che la condizione non venga soddisfatta. Pertanto, abbiamo eliminato la directory vuota di nuova produzione "Nuovo" dalla cartella domestica del nostro Ubuntu 20.04 Sistema. Successivamente, abbiamo elencato il contenuto della cartella domestica usando il comando Elenco e abbiamo scoperto che non esiste una directory del nome "nuovo" come di seguito. Dopo aver eseguito lo stesso "Direc.Sh "file bash con l'istruzione" bash ", abbiamo ottenuto l'output che mostra che la parte altro del codice è stata eseguita i.e., La directory non esiste.

$ ls
$ Bash Direc.sh

Conclusione

Finalmente! Abbiamo fatto la spiegazione del check -out se la directory esiste nel nostro Ubuntu 20.04 Sistema o no. Per questo, abbiamo provato la sceneggiatura bash per raggiungere il nostro obiettivo. Abbiamo anche discusso dell'uso di "-f" per il controllo dei file e "-d" per il controllo della directory nel sistema. Tutti gli esempi sono semplici e secondo la nostra scelta dell'utente.