Melkein jokainen Linuxin komentosarja alkaa rivillä, joka alkaa "#!". Tämä tunnetaan nimellä "shebang". Tässä on kaikki, mitä sinun tarvitsee tietää siitä.
Olet ehkä nähnyt oudon rivin, joka alkaa kirjaimella "#!" Linux-skriptien alussa ja ihmettelin, mikä se oli. Sitä kutsutaan "shebang-linjaksi", ja sen avulla Linux voi kertoa, mitä tulkkia käyttää. Näin se toimii.
Mikä on Shebang Line?
Linux-järjestelmässä on monia skriptejä, jotka automatisoivat erilaisia siivoustehtäviä. Käyttäjät ja ylläpitäjät kirjoittavat myös omia skriptejä.
Huolimatta suosittujen skriptikielten, kuten Rubyn tai Pythonin, noususta, Linux-jakeluissa on yleensä myös useita kuoria. Bash on de facto standardi valtavirran distroissa, mutta saatavilla on runsaasti kuoria.
Siellä on Zsh, samoin kuin C shell, Korn Shell ja tcsh. Ja Kala. Ja sitten vanha kunnon Bourne-kuori. Paitsi että se on itse asiassa Bash-symlinkitetty sanaan sh.
Joten ei ole olemassa vain erilaisia komentosarjakieliä, on myös erilaisia kuoria. Näillä kuorilla on erilaiset syntaksit ja komennot toisistaan. Kuinka kerrot Linuxille, mitä tulkkia käyttää?
Tätä shebang-linja tekee. Se on merkkijono, joka aloittaa tulkitut skriptit. Se on saanut nimensä kahdesta slangitermistä "#" ja "!"hahmot. Ensin mainittua kutsutaan "hashiksi". Saatat tietää sen termistä "hashtag".
"!" tunnetaan myös nimellä bang. Näiden kahden yhdistelmä on "shebang", leikki lauseella "koko shebang".
Kuinka Linux selvittää, mitä tulkkia käyttää
Saatat huomata, että "#"hahmo on myös kommentti monilla kielillä. Miten järjestelmä välttää konflikteja? Se on helppoa. Useimmat kielen tulkit yksinkertaisesti jättävät huomiotta "#"-merkkejä, jos ne ovat ensimmäisellä rivillä.
Sen sijaan ydin tarkastelee shebang-riviä ja välittää komentosarjan sopivalle tulkille.
Shebang-linjan asettaminen komentosarjoissasi
On helppoa kertoa ytimelle, mikä tulkki komentosarjoissasi suoritetaan. Laita vain absoluuttinen polkunimi sen tulkin nimi, jonka haluat suorittaa shebang-rivillä, ja sen jälkeen mahdolliset vaihtoehdot.
Esimerkiksi Bash-komentosarjan suorittaminen:
#!/bin/bash
Anna käsikirjoituksesi suorittaa oikeudet käyttämällä chmodia:
chmod +x script.sh
Nyt voit suorittaa skriptin komentoriviltä.
Nyt tiedät Shebang-linjasta
Nyt tiedät kuinka shebang-linja toimii komentosarjojen suorittamisessa Linuxissa. "#!"-merkit yksinkertaisesti kertovat ytimelle, mikä tulkki suoritetaan. Yksi, joka tulee useimpiin Linux-järjestelmiin, on Bash.
Pythonin kaltaisten komentosarjakielten suosiosta huolimatta Bash on edelleen hyödyllinen komentosarjojen kirjoittamisessa Linuxin hallintatehtävien automatisoimiseksi. Bash-skriptien kirjoittaminen ja suorittaminen Linuxissa on helppoa.