Kuinka tarkistaa, onko tiedosto tai hakemisto olemassa Bashissa

Kun työskentelet Bash- ja shell-komentosarjojen kanssa, sinun on ehkä tarkistettava, onko hakemisto vai tiedosto on tai ei ole tiedostojärjestelmässäsi.

Tämän ehdon perusteella voit poistua komentosarjasta tai näyttää varoitusviestin esimerkiksi loppukäyttäjälle.

Tarkastaaksesi, onko tiedosto tai hakemisto on olemassa Bashin kanssa, aiot käyttää ”Bash-testejä”.

Tässä opetusohjelmassa opit tarkistamaan, onko tiedosto tai hakemisto Bash-komentosarjassa.

Sisällysluettelo

Tarkista, onko tiedosto olemassa

Tarkistaaksesi, onko tiedosto Bashissa , sinun on käytettävä ”-f” -vaihtoehtoa (tiedostolle) ja määritettävä tiedosto, jonka haluat tarkistaa.

Oletetaan esimerkiksi, että haluat tarkistaa, onko tiedosto ”/ etc / passwd” tiedostojärjestelmässä vai ei.

Kirjoitat komentosarjassa seuraavan, jos lauseke.

Tarkista tiedoston olemassaolo lyhyemmillä lomakkeilla

Joissakin tapauksissa saatat olla kiinnostunut tarkistamaan, onko tiedostoa suoraan Bash-kuoressa.

Jos haluat tarkistaa, onko tiedosto Bashissa lyhyempiä lomakkeita käyttämällä, määritä sulkeissa ”-f” -vaihtoehto ja liitä komento, jonka haluat suorittaa, jos se onnistuu.

Jos haluat käyttää aiemmin käytettyä esimerkkiä, jos haluat tarkistaa, onko ”/ etc / passwd” -tiedosto olemassa lyhyemmillä lomakkeilla, kirjoitat seuraavan komennon

Kuinka tämä komento toimii?

Lyhyemmät lomakkeet liittyvät läheisesti poistumistiloihin.

Kun suoritat komennon Bashissa, se poistuu aina virhetilalla: 0 virheille ja numerot, jotka ovat suurempia kuin 0 virheille (1, 2 .. 6 ja niin edelleen)

Tässä tapauksessa ”& &” syntaksissa tarkistetaan, onko vasemmalla olevan komennon poistumistila yhtä suuri kuin nolla: jos näin on, se suorittaa komennon oikealla puolella, muuten se ei suorita sitä.

Protip: voit käytä ”echo $ {?}” nähdäksesi viimeisimmän komentoajon poistumistilan.

Useiden tiedostojen tarkistaminen

joissakin tapauksissa kannattaa ehkä tarkistaa, onko tiedostojärjestelmässäsi useita tiedostoja vai ei.

Jos haluat tarkistaa, onko Bashissa useita tiedostoja, käytä ”-f” -merkkiä ja määritä tarkistettavat tiedostot. erotettu operaattorilla ”& &”.

Tarkista, jos tiedostoa ei ole

Toisaalta sinun kannattaa tarkistaa, jos tiedostojärjestelmässäsi ei ole tiedostoa.

Tarkistaaksesi, onko tiedostoa olemassa käyttämällä Bashia, sinun on käytettävä ”!” -symboli, jota seuraa ”-f” -vaihtoehto ja tarkistettava tiedosto.

Vastaavasti voit käyttää lyhyempiä lomakkeita, jos haluat tarkistaa nopeasti jos tiedostoa ei ole suoraan päätelaitteessasi.

Huomaa, että myös || operaattori.

”||” operaattori suorittaa oikeanpuoleisen komennon vain ja vain, jos vasemmanpuoleinen komento epäonnistuu (ts. poistuu tilasta, joka on suurempi kuin nolla).

Testaa, onko tiedostoa olemassa käyttämällä ”” operaattori, tarkista vain, onko se olemassa, käyttämällä ”-f” -merkkiä ja määritä suoritettava komento, jos se epäonnistuu.

Tarkista, onko hakemistoa olemassa

Jos haluat tarkistaa, onko Bashissa hakemistoa, sinun on käytettävä ”-d” -vaihtoehtoa ja määritettävä tarkistettava hakemiston nimi.

Oletetaan esimerkiksi, että haluat tarkistaa Bashilta, onko hakemisto / jne. järjestelmässäsi.

Tarkistamaan sen olemassaolon kirjoitat seuraavan Bash-komentosarjan

Tätä komentosarjaa suoritettaessa saat seuraavan tuloksen

Tarkista hakemiston olemassaolo lyhyemmät lomakkeet

Joissakin tapauksissa saatat olla kiinnostunut tarkistamaan, onko hakemisto olemassa vai ei suoraan Bash-kuoressa.

Jos haluat tarkistaa, onko Bashissa hakemistoa, käytä lyhyempiä määritä sulkeissa ”-d” -vaihtoehto ja liitä komento, jonka haluat suorittaa, jos se onnistuu.

Oletetaan, että haluat tarkistaa, onko esimerkiksi / / etc-hakemisto olemassa.

Lyhyemmällä syntaksilla kirjoitat seuraavan komennon.

Täydellisen Bash-komentosarjan luominen

Jos huomaat tarkistavan useita kertoja päivässä, onko tiedosto (tai useita) tiedostojärjestelmässäsi, se saattaa olla kätevä, jos sinulla on komentosarja, joka voi automatisoida tämän tehtävän.

Tässä osiossa aiot luoda Bash-komentosarjan, joka voi viedä useita tiedostonimiä ja palauttaa, jos niitä on olemassa.

Jos näin ei ole, vakiotulosteessa näytetään yksinkertainen ilmoitusviesti.

Luo uusi Bash-komentosarja ja tee se suoritettavaksi chmod: lla.

Tässä on komentosarjan sisältö, jota käytetään tiedostojen olemassaolon dynaamiseen tarkistamiseen.

Tallenna komentosarja ja lisää äsken luomasi bin-kansio PATH-ympäristömuuttujaasi.

Nyt kun komentosarjasi on käytettävissä missä tahansa järjestelmässä, voit soittaa skriptiin ja aloittaa tarkistuksen jos tiedostoja on olemassa.

Mahtava!

Loit mukautetun tarkistamaan, onko tiedostoja tiedostojärjestelmässäsi vai ei.

Päätelmä

Tässä opetusohjelmassa opit, kuinka voit tarkistaa, onko tiedosto olemassa, käyttämällä Bash-testejä ja Bashin lyhyttä syntaksia.

Vastaavasti opit miten on mahdollista tarkistaa, onko hakemisto olemassa.

Lopuksi olet kirjoittanut täydellisen Bash-komentosarjan, joka hyväksyy dynaamiset argumentit tarkistaaksesi, onko useita tiedostoja.

Jos olet kiinnostunut Bash-ohjelmoinnista tai Linux-järjestelmän hallinnasta, meillä on sille omistettu täydellinen osa, joten muista tarkistaa se!

bash

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *