BASH programavimas

Shebang Bash paaiškinta pavyzdžiais

Shebang Bash paaiškinta pavyzdžiais
Bashas yra komandų kalbos vertėjas. Daugelyje operacinių sistemų „bash“ yra numatytasis komandų vertėjas, ypač daugumoje GNU / „Linux“ sistemų. „Bash“ scenarijus yra komandų, kurios priešingu atveju būtų vykdomos interaktyviai po vieną, automatizavimo metodas.

Šiame vadove patikrinkite, kas yra „shebang bash“ ir kaip jį naudoti.

Shebang Bashas:

„Bash“ scenarijuose „Shebang“ yra būdas pranešti, kokį vertėją operacinė sistema naudos likusiam failui analizuoti. Šebangui būdingas simbolių rinkinys „#!“(Be kabučių).

Čia pateikiamas greitas „Shebang“ vertėjų žodžiu direktyvos suskirstymas.

#! [argumentai]

Pavyzdžiui, jei scenarijus bus analizuojamas naudojant „Bash“ apvalkalą, tada „Shebang“ vertėjų direktyva atrodys taip.

#!/ bin / bash

„Shebang“ vertėjų žodžiu direktyva turi tam tikrų savybių.

  • Tai turi būti pirmoji scenarijaus eilutė.
  • Tai turi prasidėti „shebang“ (#!).
  • Po šebango gali būti ir nebūti tarpų (#!).
  • Vertėjas bus visas kelias į dvejetainį failą.
  • Gali būti, kad vertėjo žodžių nėra.

Pateikiame trumpiausių kelių „Shebang“ vertėjų žodžiu direktyvų sąrašą.

  • #!/ bin / bash: scenarijus bus analizuojamas naudojant bash.
  • #!/ usr / bin / python: Scenarijus bus analizuojamas naudojant pitonas dvejetainis.
  • #!/ usr / bin / env perl: scenarijus bus analizuojamas naudojant perl vykdomas. Vieta perl vykdomąjį failą pateiks env komandą.

„Shebang Bash“ naudojimas:

Scenarijuose negali būti „Shebang bash“. Bet kuris toks scenarijus bus analizuojamas naudojant numatytąjį vertėją. Pavyzdžiui, „bash“ yra numatytasis „bash“ vertėjas, o „sh“ - „zsh“. Nors daugumoje UNIX / Linux sistemų numatytasis parametras yra „bash“, vartotojai turi galimybę naudoti kitas. Tokiu atveju, nedeklaravus vertėjo, scenarijus gali neatlikti pageidaujamos užduoties.

Yra du „Shebang“ direktyvos naudojimo būdai deklaruoti vertėją. Pirmasis yra deklaruoti failo kelią į vykdomąjį failą.

#!/ bin / bash

Kitas metodas yra naudoti env įrankis, kad surastų vykdomąjį failą.

#!/ usr / bin / env bash

„ENV“ įrankio naudojimo pranašumas yra tai, kad jis ieškos vykdomojo failo dabartinio vartotojo aplinkos kintamajame $ PATH. Šiame pavyzdyje env ieškos bash. Jei kintamajame $ PATH yra deklaruotas daugiau nei vienas „bash“ vykdomasis failas, bus naudojamas pirmasis.

Kaip minėta, Shebang bash taip pat palaiko vykdomus argumentus. Pavyzdžiui, norint naudoti „bash“ derinimo režimu, „Shebang“ vertėjų direktyva atrodytų taip.

#!/ bin / bash -x

Kai reikia naudoti env „Shebang bash“, norint pridėti vykdomąjį argumentą, reikia naudoti parinktį „nustatyti“. Pavyzdžiui, toliau bus naudojamas „bash“ su įjungtu derinimo režimu.

#!/ usr / bin / env bash
$ set -x

Scenarijaus pavyzdys:

Aptarėme „Shebang bash“ pagrindus. Atėjo laikas tai įgyvendinti. Pažvelkime į „Shebang bash“ įgyvendinimą.

Paleiskite pasirinktą teksto rengyklę ir įveskite šį scenarijų:

# USD!/ bin / sh
$ echo „labas_pasaulis_bašas“

Išsaugokite failą. Norint paleisti scenarijų, jis turi būti pažymėtas kaip vykdomasis failas. Paleiskite šią komandą:

$ chmod + xx