In questo tutorial impariamo come creare ed eseguire un semplice script Bash che stampa "Hello World".
Cos'è Shebang (#!)
Ogni script di shell inizia con Shebang #!
simboli. Questo è dichiarato nella prima riga dello script e sostanzialmente dice alla shell quale interprete verrà utilizzato per eseguire lo script.
#!/bin/bash
...
Hello World Bash Script
Ora creeremo uno script bash che stampa le parole "Hello World" in un terminale.
Per prima cosa crea un file chiamato hello_world.sh
. Usando il terminale scriviamo:
$ touch hello_world.sh
Il nostro file è ora creato.
Quindi, apri il file nel tuo editor preferito; Sto usando nano, quindi sarebbe:
$ nano hello_world.sh
Una volta che il hello_world.sh
è aperto nel tuo editor, digita i seguenti comandi:
#!/bin/bash
echo "Hello World"
Esegui script di shell
Ora per stampare il hello world
, dobbiamo eseguire lo script di shell che abbiamo creato.
Esistono diversi modi per eseguire lo script della shell
$ sh ./hello_world.sh ## incorrect
$ ./hello_world.sh ## correct
$ bash ./hello_world.sh ## correct
Il primo metodo non è corretto, perché stai dicendo alla shell di usare l'interprete della shell non l'interprete bash.
Il secondo metodo è corretto perché eseguiamo semplicemente lo script che utilizzerà l'interprete definito nel file, la prima riga dello script che è #!/bin/bash
.
Anche il terzo metodo è corretto perché in questo caso stiamo dicendo di utilizzare l'interprete bash che è lo stesso definito nel file.
Autorizzazione negata durante l'esecuzione dello script della shell
Se provi a eseguire lo script utilizzando:
$ ./hello_world.sh
-bash: ./hello_world.sh: Permission denied
vedrai un errore di autorizzazione negata. Questo perché lo script non dispone dell'autorizzazione di esecuzione.
Puoi concedere allo script un'autorizzazione di esecuzione utilizzando:
$ chmod +x ./hello_world.sh
Ora, se esegui di nuovo lo script, vedrai stampato "Hello World":
$ ./hello_world.sh
Hello World