SHEBANG #!/bin/sh

Di James Harrison di Unsplash

Ogni sviluppatore potrebbe incontrare uno script come il seguente:

#!/usr/bin/python3
print("Hello world!")

Questo articolo tratterà tutte le domande confuse che emergono quando qualcuno vede uno shebang per la prima volta.

A cosa serve lo shebang?

Dopo lo shebang, di solito c'è un percorso per l'interprete della sceneggiatura corrente. Il percorso dopo lo shebang mostra al sistema che tipo di script vogliamo eseguire. Immaginiamo di avere un file chiamato "hello.sh" con il contenuto:

#!/bin/sh
echo "Hello!"

echo "Hello!"

Niente. Lo script verrà comunque eseguito come sopra perché, in scenari come questo, uno script di shell, la scelta predefinita del sistema è.

E se invece volessimo scrivere uno script Python?

#!/usr/bin/python3
print("Hello Python3!")

Se nessuno di questi due fattori si applica e non lo eseguiamo con il comando python, otteniamo un errore di sintassi. Il sistema vuole eseguire il nostro script Python come script di shell, il che non funziona.

Se il comando "python" esegue lo script, è chiaro che funzionerà, ma potrebbe non essere immediatamente chiaro per un visualizzatore esterno. Potrebbe essere uno script python, ma se non sei sicuro, dovresti provare semplicemente "./nome_script" nella shell. È qui che entra in gioco lo shebang. Se lo sviluppatore ne ha fornito uno, lo script funzionerà senza problemi. Altrimenti, lo spettatore deve guardare il copione e capire cosa fa.

Conclusione

Uno shebang non è necessario, ma dovrebbe sempre verificarsi in script ben scritti. Garantisce che il sistema lo eseguirà correttamente, anche senza alcuna estensione di file.

Suggested posts

Ricerca di informazioni sui nomi di dominio

Un estratto da Small, Sharp Software Tools di Brian P. Hogan

Ricerca di informazioni sui nomi di dominio

Quando fai una richiesta a facebook.com, il tuo computer cerca il nome di dominio per tradurre quel nome di dominio in un indirizzo IP in modo che il tuo computer possa effettuare quella connessione.

Viaggio di uno sceneggiatore (sviluppatore di strumenti)

Viaggio di uno sceneggiatore (sviluppatore di strumenti)

Inizia a sviluppare il tuo strumento. Ciao ragazzi, Ancora una volta vi do il benvenuto nel mio medium.

Related posts

Cosa puoi fare nella tua stagione di attesa (in attesa di ottenere il tuo primo lavoro nella tecnologia)

Cosa puoi fare nella tua stagione di attesa (in attesa di ottenere il tuo primo lavoro nella tecnologia)

Il passaggio a una nuova carriera può essere estremamente impegnativo se provi a farlo da solo. È importante trovare partner responsabili che abbiano il tuo stesso livello di apprendimento, che condividano obiettivi, tenacia e determinazione simili.

Conversazioni pericolose

Conversazioni pericolose

Se vogliamo continuare a prosperare su questo pianeta, dovremo avere conversazioni pericolose. Quelli che mettono in discussione ciò che abbiamo fatto, ciò che stiamo facendo e ciò che attualmente intendiamo continuare a fare (o stiamo pianificando di fare).

L'apprendimento alla settimana lavorativa conta più di quanto pensi

L'apprendimento alla settimana lavorativa conta più di quanto pensi

Spesso ci troviamo a lottare per implementare ciò che sappiamo essere buono per noi. Dal dire a un altro significativo che li amiamo al ricordare di parlare come un pirata, ci saranno sempre quelli che affermeranno che un giorno, una settimana o un mese di eventi non è necessario perché stanno già facendo quelle cose.

VITA SENZA LIMITI

Quando cresci tendi a sentirti dire che il mondo è così com'è e che la tua vita è vivere la tua vita dentro il mondo, senza mai rischiare la vita, basta seguire un percorso prestabilito e morire alla fine, e cercare di non farlo sfondare troppo i muri. Ma questa è una vita molto limitata.