Come eseguire lo script Bash in Linux?
Gli script Bash, noti anche come script di shell, sono strumenti potenti nel mondo dell'automazione della riga di comando. Permettono di eseguire una serie di attività o eseguire comandi scrivendo script che possono essere eseguiti in un terminale o in un'interfaccia a riga di comando. Tuttavia, spesso sorge la domanda: come si esegue uno script Bash in Linux? In questo articolo esploreremo vari metodi per eseguire gli script Bash e forniremo preziosi approfondimenti sulle migliori pratiche.
Tabella dei contenuti
- La linea Shebang:
- Utilizzo di bash o sh per eseguire Bash Script in Linux
- Utilizzo del codice sorgente per eseguire lo script Bash in Linux
- Rendere eseguibile lo script con chmod per eseguire lo script Bash in Linux
- Come eseguire Bash Script in Linux – Domande frequenti
La linea Shebang:
Prima di approfondire i metodi di esecuzione degli script Bash, è importante comprendere la riga Shebang. La riga Shebang, che è la prima riga dello script, indica l'interprete che dovrebbe essere utilizzato per eseguire lo script. Per gli script Bash, questa riga dovrebbe in genere assomigliare a questa:
#!/bin/bash
Questa riga informa il sistema che lo script deve essere interpretato utilizzando la shell Bash. Anche se alcuni metodi potrebbero funzionare senza questa riga, è buona norma includerla nello script per garantire la compatibilità.
Utilizzo di bash o sh per eseguire Bash Script in Linux
Questo è il modo più standard di eseguire lo script bash. Se utilizzi Windows devi avere git bash installato. Per Linux e macOS, bash è installato per impostazione predefinita. In questo metodo, digitiamo bash seguito dal nome del file con estensione, in questo caso sh. In un terminale, esegui il codice seguente sostituendo il nome del file con il nome del file dello script bash.
bash filename.sh
In questo caso, bash è un programma che contiene gli ambienti shell necessari per eseguire lo script dalla shell bash. Quindi questo eseguirà lo script dall'interprete bash.
Utilizzando il comando bash per eseguire lo script.
Possiamo anche usare sh per eseguire lo script poiché indirizzerà alla shell predefinita nell'ambiente di configurazione.
sh filename.sh
Utilizzando il comando sh per eseguire lo script bash.
Dall'esempio precedente, siamo stati in grado di eseguire uno script bash utilizzando bash e il comando sh. Se non ti trovi nella stessa cartella/directory dello script, assicurati di specificare il percorso relativo allo script.
Utilizzo del codice sorgente per eseguire lo script Bash in Linux
Questo metodo è abbastanza semplice per eseguire uno script bash e tutti sono abbastanza semplici. Dobbiamo solo digitare source prima del nome del file/script con un'estensione. In un terminale, esegui il codice seguente sostituendo il nome del file con il nome del file dello script bash.
source filename.sh
Lo script verrà semplicemente eseguito dopo aver acquisito il file. Il comando source eseguirà lo script della shell come comando bash predefinito a condizione che tu sia nella shell bash. Devi essere nella shell bash per eseguire lo script usando il comando source.
Utilizzo di Source per eseguire uno script bash
Dallo screenshot dello script in esecuzione, possiamo vedere che il sorgente funziona esattamente come il comando bash o sh. Lo script sopra è molto semplice, ma non importa purché lo script sia privo di errori e bug. Inoltre, devi aggiungere anche qui il percorso relativo se non ti trovi nella stessa directory dello script bash.
Rendere eseguibile lo script con chmod> per eseguire Bash Script in Linux
Questo metodo ti consente di eseguire uno script Bash come eseguibile, il che significa che puoi eseguirlo da qualsiasi punto del tuo ambiente purché tu abbia una shell Bash disponibile. Per rendere eseguibile lo script, è necessario modificare i permessi dei file utilizzando il comando chmod> comando.
Innanzitutto, vai alla directory in cui si trova il tuo script. Quindi, esegui il comando seguente per modificare la modalità del file, rendendolo eseguibile:
chmod +x filename.sh
Il ` +x`> flag indica che il file dovrebbe essere eseguibile. Se stai usando Linux e non sei l'utente root, potresti dover usare ` sudo`> prima del ` chmod`> il comando per il permesso.
Dopo aver concesso l'autorizzazione di esecuzione, puoi eseguire lo script con il seguente comando, presupponendo che ti trovi nella stessa directory dello script:
./filename.sh
Se non ti trovi sullo stesso percorso dello script bash, assicurati di fornire il percorso relativo al file o allo script bash.
./pathToTheFile.sh
usando chmod ed eseguendo lo script.
Esecuzione di uno script da un percorso relativo.
Come eseguire Bash Script in Linux – Domande frequenti
Come posso eseguire uno script Bash in Linux?
Per eseguire uno script Bash in Linux, devi prima assicurarti che lo script disponga delle autorizzazioni eseguibili. Puoi farlo usando il comando `
chmod +x`>comando seguito dal nome dello script. Una volta che lo script è eseguibile, puoi eseguirlo digitando `./`>seguito dal nome dello script nel terminale.
Posso eseguire uno script Bash senza utilizzare il terminale?
Sì, puoi eseguire uno script Bash senza utilizzare il terminale facendo doppio clic sul file di script se il tuo ambiente desktop lo supporta. Potrebbe essere necessario impostare prima le autorizzazioni eseguibili dello script. In alternativa, puoi eseguire uno script Bash indirettamente da un altro programma o script.
Come posso eseguire uno script Bash come utente specifico in Linux?
Per eseguire uno script Bash come utente specifico in Linux, puoi utilizzare il comando `
sudo -u`>comando seguito dal nome utente e dal percorso dello script. Ciò consente di eseguire lo script con le autorizzazioni dell'utente specificato.
Perché ricevo un errore di autorizzazione negata quando provo a eseguire uno script Bash?
L'errore di autorizzazione negata si verifica quando lo script non dispone di autorizzazioni eseguibili. È possibile risolvere questo problema utilizzando il file `
chmod +x`>comando per concedere autorizzazioni eseguibili allo script. In alternativa, assicurati di provare a eseguire lo script da una directory in cui disponi delle autorizzazioni adeguate.
Posso eseguire uno script Bash in background?
Sì, puoi eseguire uno script Bash in background aggiungendo una e commerciale (`
&`>) alla fine del comando durante l'esecuzione dello script. Ciò consente allo script di essere eseguito in modo asincrono e puoi continuare a utilizzare il terminale mentre lo script viene eseguito in background. Inoltre, puoi utilizzare strumenti come `nohup`>per eseguire script scollegati dalla sessione del terminale.
Conclusione:
In questo articolo, abbiamo discusso vari metodi per eseguire gli script Bash in Linux e fornito le migliori pratiche per garantire un'esecuzione fluida. Includendo una riga shebang nei tuoi script e scegliendo il metodo appropriato per le tue esigenze, puoi sfruttare tutta la potenza degli script Bash per automatizzare le attività e semplificare il flusso di lavoro della riga di comando. Sia che tu preferisca usare bash> , sh> , O source> o rendere eseguibili i tuoi script con chmod> , questi metodi ti consentono di eseguire script Bash in modo efficace ed efficiente in un ambiente Linux.