Shell Scripting - Introduction & Shebang
Cuprins:
- Directiva de interpretare Shebang
- Folosirea Shebang în Scripturile Bash
- Script de exemplu
- Suprapunerea Shebang-ului
- Concluzie
Această secvență de caractere (
#!
) Se numește shebang și este utilizată pentru a spune sistemului de operare ce interpret să folosească pentru a analiza restul fișierului.
Directiva de interpretare Shebang
Directiva interpretului Shebang are următoarea formă:
#!interpreter
- Directiva trebuie să fie prima linie din script. Directiva trebuie să înceapă cu shebang
#!Spațiul alb după caracterele shebang este opțional.Interpreter este calea completă către un fișier binar (ex:/bin/sh,/bin/bash). Argumentele de interpretare sunt opționale.
Exemple:
-
#!/bin/bash- Utilizeazăbashpentru a analiza fișierul.#!/usr/bin/env perl- Utilizează comandaenvpentru a găsi calea către executabilulperl.#!/usr/bin/pythonExecută fișierul folosind binarulpython.
Folosirea Shebang în Scripturile Bash
Dacă un shebang nu este specificat și utilizatorul care rulează scriptul Bash folosește un alt Shell, scriptul va fi analizat de orice interprete implicite este folosit de respectivul Shell. De exemplu, interpretul implicit pentru
bash
este
bash
și pentru
zsh
este
sh
. Pentru a vă asigura că scriptul dvs. va fi întotdeauna interpretat cu Bash, va trebui să specificați calea executabilă folosind shebang.
Există două modalități de a utiliza directiva Shebang și de a seta interpretul.
-
Folosind calea absolută către binarul bash:
#!/bin/bashFolosind utilitarul
env:#!/usr/bin/env bash
Avantajul utilizării celei de-a doua abordări este că va căuta executarea
bash
în
$PATH
mediu
$PATH
utilizatorului. Dacă există mai multe căi de
bash
, prima va fi folosită de script.
Când utilizați prima opțiune pentru a adăuga o opțiune la furnizarea de coajă Bash, transmiteți-o interpretului. De exemplu, pentru a rula scriptul într-un mod de depanare, ați utiliza
#!/bin/bash -x
. Dacă utilizați metoda
env
, atunci trebuie să utilizați
set
pentru a declara opțiunea. Pentru a activa modul de depanare, adăugați
set -x
după linia de shebang.
Script de exemplu
Să creăm un script simplu folosind shebang care va imprima „Hello, World”. Deschideți editorul de text și lipiți următoarea linie:
nano hello_world
Salut Lume
#!/bin/bash echo "Hello, World"
Pentru a putea rula scriptul fără a specifica interpretul din linia de comandă, va trebui să faceți fișierul executabil:
chmod +x hello_world
Acum, dacă puteți rula scriptul tastând
./
urmată de numele scriptului:
./hello_world
Suprapunerea Shebang-ului
Dacă din anumite motive doriți să înlocuiți setul de interprete din linia Shebang, trebuie să rulați scriptul specificând explicit shell-ul dorit.
De exemplu, pentru a rula un script care are
#!/bin/sh
specificat în linia Shebang folosind
bash
ul
bash
care l-ați tipat:
bash hello_world
Vă rugăm să rețineți, nu este o idee bună să înlocuiți interpretul shell deoarece poate duce la un comportament neașteptat al scriptului.
Concluzie
Până acum, ar trebui să înțelegeți bine ce este Shebang și cum să îl utilizați în scripturile dvs. Bash.
terminalul bashMicrosoft Research Asia găzduiește porțile la 10 ani Bash
Microsoft Research Asia a crescut de la o duzină de oameni în 1998 la mai mult de 350 de decenii mai târziu.
Cum se rulează Bash pe Ubuntu pe Windows 10
Activarea sistemului Windows Subsystem pentru Linux vă va permite să rulați Bash pe Ubuntu în Windows 10, script-uri Bash , Instrumentele pentru linia de comandă Linux, instrumentele primului Linux
Bash pentru buclă
Există 3 construcții de buclă de bază în scripturile Bash, pentru buclă, loop, și până la buclă. În acest tutorial, vom acoperi elementele de bază pentru bucle în Bash, precum și declarațiile de pauză și continuare pentru a modifica fluxul unei bucle.







