Szinte minden Linux shell script "#!"-val kezdődő sorral kezdődik. Ez az úgynevezett "shebang". Itt van minden, amit tudnia kell róla.

Lehet, hogy láttál egy furcsa sort, amely "" karakterrel kezdődik#!" a Linux szkriptek elején, és azon töprengtem, mi ez. Ezt "shebang vonalnak" hívják, és lehetővé teszi a Linux számára, hogy megmondja, melyik tolmácsot használja. Íme, hogyan működik.

Mi az a Shebang vonal?

Egy Linux rendszer számos szkriptet tartalmaz, amelyek automatizálják a különféle háztartási feladatokat. A felhasználók és a rendszergazdák saját szkripteket is írnak.

A népszerű szkriptnyelvek, például a Ruby vagy a Python térnyerése ellenére a Linux disztribúciók is jellemzően több shell-lel vannak felszerelve. A Bash de facto szabvány a mainstream disztribúciókon, de rengeteg shell áll rendelkezésre.

Ott van a Zsh, valamint a C shell, a Korn Shell és a tcsh. És Fish. És akkor a jó öreg Bourne kagyló. Kivéve, hogy valójában a Bash az sh-hez van szimbolizálva.

Tehát nemcsak különböző szkriptnyelvek léteznek, hanem különböző shellek is. Ezek a shell-ek egymástól eltérő szintaxissal és parancsokkal rendelkeznek. Hogyan mondja meg a Linuxnak, hogy melyik tolmácsot használja?

instagram viewer

Ezt csinálja a shebang vonal. Ez egy karaktersorozat, amely elindítja az értelmezett szkripteket. Nevét két szleng kifejezésből kapta, amelyek a "#"és"!" karakterek. Az előbbit "hash"-nak hívják. Lehet, hogy a "hashtag" kifejezésből ismeri.

A "!" bummnak is nevezik. A kettő kombinációja egy "shebang", egy játék a kifejezéssel, hogy "az egész shebang".

Hogyan találja ki a Linux, hogy melyik tolmácsot használja?

Észreveheti, hogy a "#" karakter is egy megjegyzés sok nyelven. Hogyan kerüli el a rendszer a konfliktusokat? Ez könnyű. A legtöbb nyelvi tolmács egyszerűen figyelmen kívül hagyja "#" karaktereket, ha az első sorban vannak.

Ehelyett a kernel megnézi a shebang sort, és átadja a szkriptet a megfelelő értelmezőnek.

A Shebang vonal beállítása a szkriptekben

Egyszerű megmondani a kernelnek, hogy melyik értelmezőt futtassa a szkriptekben. Csak tedd az abszolút elérési út a futtatni kívánt tolmács nevét a shebang sorban, majd az összes opciót.

Például egy Bash-szkript futtatásához:

#!/bin/bash

Add meg a forgatókönyvedet engedélyek végrehajtása a chmod használatával:

chmod +x script.sh

Most már futtathatja a szkriptet a parancssorból.

Most már tudsz a Shebang vonalról

Most már tudja, hogyan működik a shebang vonal a szkriptek futtatásához Linux alatt. A "#!" karakterek egyszerűen megmondják a kernelnek, hogy melyik értelmezőt futtassa. A legtöbb Linux rendszerhez tartozó egyik a Bash.

A szkriptnyelvek, például a Python népszerűsége ellenére a Bash továbbra is hasznos a Linux adminisztrációs feladatainak automatizálására szolgáló szkriptek írásához. Könnyű Bash-szkripteket írni és futtatni Linuxon.