Kataloger og mapper er de viktigste og ganske viktige delene av ethvert operativsystem. Uten kataloger og filer blir ikke systemet vårt fullført. Katalogene brukes til å lagre undermapper og filer som inneholder data i dem for sikkerhet og personlig arbeid. Innenfor Linux -operativsystemet har vi også det samme filsystemet i.e., Kataloger og undermapper. Bash -programmering kom med noen av de veldig enkle kommandoene og utsagnene for å sjekke om den spesifikke katalogen til en fil eksisterer i systemet vårt eller ikke. Derfor har vi bestemt oss for å skrive denne artikkelen for å sjekke om katalogen eksisterer i vårt Linux -system eller ikke.
Eksempel 01: Sjekk om filen eksisterer
La oss komme i gang med det grunnleggende eksemplet. Vi vil se på å sjekke en enkel fil i Linux -systemet vårt først jeg.e., Hvis eksisterer eller ikke. Derfor har vi opprettet en ny teksttypefil som heter “Ny.txt ”i Ubuntus hjemmemappe med“ Touch ”-instruksjonen. Vi har lagt til en en-linjetekst i filen og vist den på skallet ved hjelp av "katten" instruksjonen vist nedenfor. Utgangen fra den under-uttalte kommandoen er vedlagt på bildet.
$ berør nytt.tekst
$ katt ny.tekst
Nå er det på tide å lage en ny bash -fil med "berørings" -instruksjonen som heter "Direc.sh ”som nedenfor. Vi må åpne denne tomme filen for å begynne å kode i den. For dette har vi brukt “Nano” -instruksjonen for å lansere den i GNU Nano Editor. Utgangen fra den under-uttalte kommandoen er vedlagt på bildet.
$ Touch Direc.sh
$ Nano Direc.sh
Nå er den tomme filen åpnet i Nano -redigereren. Innenfor den første kodelinjen har vi initialisert en filvariabel “F” som holder en bane til en fil “Ny.txt ”som“/Home/Linux/Ny.tekst". Uttalelsen om "if-da-da" har blitt brukt her for å sjekke om filen "ny.txt ”eksisterer eller ikke. "IF" -klausulen startes med nøkkelordet "test" etterfulgt av flagget "-f" for filer. Innenfor inverterte komma har vi lagt til variabelen “$ f”. Etter dette startet "da" -klausulen med "ekko" -uttalelsen ved å bruke variabelnavnet for å vise om det eksisterer eller ikke. Den "da" delen av "if-da-da" -uttalelsen vil bare bli utført når tilstanden "if" vil være sann.
La oss kjøre bash -filen ved hjelp av "bash" -tnøkkelordet etterfulgt av navnet på en fil "Direc.sh ”. Som filen eksisterer i hjemmekatalogen til systemet vårt, utførte den dermed Echo -setningen og viser at filen eksisterer. Utgangen fra den under-uttalte kommandoen er vedlagt på bildet.
$ Bash Direc.sh
Det samme kan oppnås ved bruk av firkantede parenteser rundt tilstanden til "hvis" -klausulen uten å bruke nøkkelordet "test" som vist nedenfor. La oss utføre den for å se resultatet i baseutgangsskjermen i skallet.
Etter å ha kjørt denne oppdaterte koden, har vi fått det samme resultatet jeg.e. Filen eksisterer. Utgangen fra den under-uttalte kommandoen er vedlagt på bildet.
$ Bash Direc.sh
Eksempel 02: Sjekk om katalogen eksisterer
La oss se på koden som brukes til å sjekke om katalogen til mappen finnes i systemet vårt eller ikke. For det bruker vi en rent ny mappe. Derfor, innenfor det terminale skall -spørringsområdet, har vi prøvd “Mkdir” -kommandoen for å opprette en ny katalog som heter “New”. Denne nyopprettede katalogen vil bli brukt i vår kode for å sjekke om den eksisterer eller ikke. Listekommandoen blir utført for å se alle eksisterende kataloger og filer i hjemmemappen. Vi kan se den "nye" katalogen som. Utgangen fra den under-uttalte kommandoen er vedlagt på bildet.
$ mkdrir ny
$ ls
La oss åpne det samme “Direc.SH ”-filen i Ubuntus Nano -redigerer for å opprette en ny kode. Etter at filen er lansert, må vi opprette en ny katalogvariabel “D” som holder en vei til en nyopprettet katalog med navnet “New” som “/Home/Linux/New”. Det overordnede arbeidet for å sjekke katalogeksisten. Så "hvis" -uttalelsen er startet med betingelsen for å sjekke katalogen i et system ved hjelp av "-D" -flagget for "katalog" sammen med katalogvariabelen i inverterte komma. Denne tilstanden har blitt brukt i de firkantede parentesene. Hvis tilstanden ble fornøyd og katalogen eksisterer, vil "da" uttalelsen bli utført sammen med "ekko" -uttalelsen. Ellers vil den "ellers" delen av uttalelsen bli brukt sammen med "ekko" -uttalelsen som viser at filen ikke eksisterer. Den samlede uttalelsen vil bli stengt av "FI" nøkkelordet som vist nedenfor.
Nå er det på tide å kjøre bash -koden vår i terminalskallet ved å bruke "bash" -spørsmålet som vises på bildet. Etter å ha kjørt den, har vi fått suksessmeldingen som viser at katalogen eksisterer. Utgangen fra den under-uttalte kommandoen er vedlagt på bildet.
$ Bash Direc.sh
Hvis du vil oppnå den andre delutførelsen i skallterminalen, må du slette katalogen slik at tilstanden ikke blir fornøyd. Derfor har vi slettet den nyopplagte tomme katalogen "Ny" fra hjemmemappen til Ubuntu 20.04 System. Etter dette har vi listet opp innholdet i hjemmemappen ved hjelp av listekommandoen og funnet at det ikke er noen katalog med navnet "Ny" som nedenfor. Etter å ha kjørt den samme “Direc.sh ”bash -fil med“ bash ”-instruksjonen, har vi fått utdataene som viser at den andre delen av koden er utført i.e., Katalog eksisterer ikke.
$ ls
$ Bash Direc.sh
Konklusjon
Endelig! Vi har gjort forklaringen på å sjekke ut hvis katalogen eksisterer i Ubuntu 20.04 System eller ikke. For dette har vi prøvd bashskriptet for å oppnå vårt mål. Vi har også diskutert bruken av "-f" for filkontroll og "-d" for katalogsjekking i systemet. Alle eksemplene er enkle og i henhold til vårt brukervalg.