BASHi programmeerimine

Kuidas kontrollida, kas fail on bashis olemas

Kuidas kontrollida, kas fail on bashis olemas
Faili kättesaadavuse kontrollimiseks Linuxis on mitu võimalust. Bashi skriptimise käsk “test” on üks peamisi lähenemisviise faili olemasolu kontrollimiseks.
Selle juhendi eesmärk on arutada faili olemasolu süsteemis bashi skriptide kaudu:

Kuidas kontrollida faili olemasolu bashi skriptide abil:

1) Sisestades terminali failinime:

Esiteks peame looma bashi skriptifaili, kasutage allpool mainitud käsku:

$ touch testfail.sh

Minu loodud faili nimi on “testfile.sh ",".sh ”laiendus tähistab shelliskripti faili:

Avage testfail.sh ”mis tahes tekstiredaktoris. Seejärel kirjutage skript, salvestage see, vajutades nuppu “salvesta”.

Üks võimalus on leida fail, küsides terminali kasutajalt failinime.

Kasuta-fFaili olemasolu kontrollimiseks.

Kirjutage järgmine skript:

#!/ bin / bash
kaja "Sisestage oma failinimi"
loe uusfail1
kui [-f "$ newfile1"]
siis
kaja "Fail on leitud"
muud
kaja "Faili ei leitud"
fi

Minge tagasi terminali ja käivitage fail väljundi printimiseks:

./faili nimi.sh

Terminalis kuvatakse luba keelatud.

Muutke see käivitatavaks, käivitades allpool nimetatud käsu:

$ chmod + x testfail.sh

Sisestage faili nimi ja see prindib väljundi:

2) Sisestades faili nimi skripti kirjutamise ajal:
Teine võimalus faili leida, andes faili nime skripti kirjutamise ajal. Meil on faili kättesaadavuse kontrollimiseks kolm võimalust. Esimene neist kasutab käsku „test”, teine ​​nurksulgudes väljendiga „if” ja kolmas ka allpool näidatud nurksulgudes „if”, kuid topelt nurksulgudes:

  1. “Test VÄLJENDUS.”
  2. "Kui [VÄLJENDUS]"
  3. "Kui [[VÄLJENDUS]]

Mõistame seda näidete abil:

1) test [väljend]
Kopeerige antud skript ja kleepige see redaktorisse, salvestage see:

#!/ bin / bash
failinimi = fail1
kui test -f "$ failinimi";
siis
echo "$ fail on leitud."
muud
kaja "faili $ ei leitud"
fi

Väljund:

Kuna minu kataloogis sellist faili pole, kuvatakse koodis teadet "Faili ei leitud".

2) kui [avaldis]

Kopeerige järgmine skript, et kontrollida faili olemasolu või mitte:

#!/ bin / bash
failinimi = minufail.txt
if [-f "$ failinimi"];
siis
echo "$ failinimi on leitud."
muud
kaja "failinime ei leitud"
fi

Väljund:

3) kui [[avaldis]]

Kopeerige allpool kirjutatud skript ja kleepige see terminali:

#!/ bin / bash
failinimi = testfail
kui [[-f "$ failinimi"]];
siis
echo "$ failinimi on leitud."
muud
kaja "$ failinime ei leitud"
fi

Väljund:

Kataloogi kontrollimiseks toimige järgmiselt

3) Sisestades kataloogi nime skripti kirjutamise ajal

Kasuta "-d”Lipp kataloogi olemasolu kontrollimiseks.

Allpool mainitud skriptis on “dir11” muutuja, kuhu salvestate faili, mille leiate; selles näites soovin kontrollida katalooginime “testDir” olemasolu või mitte.

#!/ bin / bash
dir11 = testDir
kui [-d "$ dir11"]
siis
kaja "Kataloog on leitud"
muud
kaja "Kataloogi ei leitud"
fi

Väljund:

2) Sisestades terminali failinime:
Kui käivitate terminalis käsu, et kontrollida, kas kataloog on olemas või mitte, peate sisestama otsitava kataloogi nime:

#!/ bin / bash
echo "tippige oma kataloogi nimi."
lugege Dir1
kui [-d "Dir1"]
siis
kaja "kataloog on leitud"
muud
kaja "kataloogi ei leitud"
fi

Väljund:

Faili kontrollimine lauset „kui” kasutamata:

Käsu “test” saab käivitada ilma lauset “kui”. See kuvab väljundit ainult siis, kui fail on olemas; muul juhul ei oleks väljundit:

Kirjutage skript:

  1. test -f minufail.txt && echo "fail on leitud"

  2. [-f minufail.txt] && echo "$ fail on leitud."

  3. [[-f minu fail.txt]] && echo "$ fail on leitud."

Väljund:

Kataloogi kontrollimine lauset „kui” kasutamata:

Kataloogi olemasolu kontrollimiseks kasutage allpool nimetatud lauseid:

  1. [[-d testDir]] && echo "kataloog on olemas"

  2. 2) [-d testDir] && echo "kataloog on olemas"

Väljund:

Mitme faili / kataloogi kontrollimine:

1) Mitme faili kontrollimine lausetega „if”:
Pesastatud lausete „if / else” asemel kasutage lippu „-a” erinevate failide olemasolu kontrollimiseks:

#!/ bin / bash
kui [-f uus_fail.txt -a -f uusfail.txt]; siis
kaja "Mõlemad failid on olemas."
fi

Teine võimalus on:

#!/ bin / bash
kui [[-f uus_fail.txt && -f uusfail.txt]]; siis
kaja "Mõlemad failid on olemas."
fi

Väljund:

2) Mitme faili kontrollimine ilma lauset “kui” kasutamata:
Kasutage järgmist lauset mitme faili üheaegseks kontrollimiseks 1 ilma "if" -ta:

  1. [[-f uus_fail.txt && -f uusfail.txt]] && echo “Mõlemad failid väljuvad.”

  2. [[-f uus_fail.txt && -f uusfail.txt]] && echo “Mõlemad failid väljuvad.”

Väljund:

Järeldus:

Selles artiklis on näidatud, kuidas kasutada faili või kataloogi kontrollimiseks bashi skripte. Faili kättesaadavuse kontrollimiseks kasutasime erinevaid võimalusi. Esiteks kasutame erinevate lippudega käsku “test”. Seejärel õppisime faili või kataloogi kontrollimiseks kasutama lauset „kui”, pesitsenud „kui-veel” ja ilma lauseteta „kui”. Uurisime ka, kuidas kontrollida mitut faili või kataloogi.

Kuidas näidata FPS-loendurit Linuxi mängudes
Linuxi mängimine sai suure tõuke, kui Valve teatas Steam-kliendi ja nende mängude Linuxi toest 2012. aastal. Sellest ajast peale on paljud AAA- ja ind...
Sid Meieri Civilization VI allalaadimine ja mängimine Linuxis
Sissejuhatus mängu Civilization 6 on kaasaegne kontseptsioon, mis tutvustati Age of Empires mängude sarjas. Idee oli üsna lihtne; alustaksite kõige põ...
Kuidas installida ja mängida Doomi Linuxis
Doomi sissejuhatus Doom-seeria sai alguse 90ndatel pärast algse Doomi väljaandmist. See oli kohene hitt ja sellest ajast alates on mänguseeria pälvinu...