Format Atlas

Dati

Che cos'è uno script shell?

Uno script shell è un file di testo con comandi interpretati da una shell, ad esempio sh o Bash. L'estensione .sh è comune, ma non identifica la sintassi della shell. Occorre verificare l'ambiente di destinazione, inclusi shebang, modalità di esecuzione, permessi e terminatori di riga.

.sh · .bashComandi di testo interpretati da una shell

Quando scegliere questo formato

  • Attività con una shell di destinazione nota, come POSIX sh o Bash
  • Automatizzare comandi verificati e ripetibili

Quando evitare questo formato

  • Distribuire tra shell diverse senza verificarne la compatibilità
  • Eseguire script senza controllarne provenienza e contenuto

Usi comuni

  • Automatizzare comandi su sistemi Unix-like
  • Ripetere attività di sviluppo e gestione

Caratteristiche

  • Può contenere comandi, variabili, condizioni e cicli
  • Lo shebang può indicare l'interprete da usare per l'esecuzione
  • Le funzioni specifiche di Bash differiscono dalla sintassi POSIX sh

Vantaggi e svantaggi

Vantaggi

  • Automatizza attività combinando comandi shell esistenti
  • È facile da esaminare come testo e tenere sotto controllo versione

Svantaggi

  • Sintassi e comandi disponibili variano in base a shell, sistema operativo e implementazione
  • Un'esecuzione errata può modificare o eliminare file e causare altri effetti indesiderati

Aprire e convertire

Come aprire

Esamina il contenuto con un editor di testo. Prima di eseguirlo, controlla shebang, shell di destinazione, percorsi usati, permessi e terminatori di riga. Non eseguire script di provenienza non attendibile.

Come convertire

Quando adatti uno script Bash a POSIX sh o a un'altra shell, verifica sintassi specifica di Bash e comandi interni ed esterni, poi controlla la sintassi e prova lo script nell'ambiente di destinazione.

Avvertenze

  • L'estensione .sh da sola non indica se lo script è destinato a POSIX sh, Bash o un'altra shell.
  • Gli script contengono comandi eseguibili. Verificane provenienza e contenuto e, se opportuno, testali in un ambiente isolato.
  • Un file .sh potrebbe non essere eseguibile direttamente nel Prompt dei comandi di Windows. Controlla quale shell o ambiente di compatibilità è richiesto.

Domande frequenti

Qualsiasi shell può eseguire un file .sh?

No. Sintassi e comandi variano da una shell all'altra. Controlla lo shebang e l'ambiente di destinazione.

Formati correlati

Riferimenti e specifiche