Come eseguire comandi da terminale tramite uno script su macOS

Per eseguire comandi del Terminale da uno script su macOS, inseriscili in uno script di shell in formato testo semplice, rendilo eseguibile e poi avvialo dal Finder o dal Terminale. Utilizza .commandun'estensione per aprirlo con un doppio clic. Uno script non aggira i controlli sulla privacy di macOS né concede privilegi di amministratore.

Una finestra di editor di testo semplice che mostra uno shebang zsh e un comando echo in MyScript.command.
Un breve script di shell inizia con una shebang che seleziona zsh.

1. Scrivi i comandi in un file di testo semplice

Uno script di shell è un file di testo contenente comandi. Inizia con una shebang , la prima riga che indica a macOS quale shell deve interpretare il file. La shell predefinita corrente per le nuove finestre del Terminale è zsh, sebbene un amministratore possa impostarne una diversa, come spiega Apple nella sua guida al Terminale . Questo esempio utilizza esplicitamente zsh:

#!/bin/zsh
# Print a message when the script runs
echo "Script is running"

Inserisci i comandi su righe separate sotto lo shebang. Lo shebang seleziona l'interprete, quindi usa la sintassi che supporta; uno script Bash, ad esempio, può iniziare con . La guida agli script di shell#!/bin/bash di Apple spiega le basi.

È possibile utilizzare TextEdit, ma assicurarsi che il file sia in formato testo semplice: i nuovi documenti di TextEdit possono essere in formato RTF. Scegliere Formato > Converti in testo semplice oppure impostare il formato dei nuovi documenti di TextEdit su Testo semplice nelle sue impostazioni. La formattazione RTF non è codice shell. Apple documenta queste opzioni nella sua guida di TextEdit . Anche un editor di codice o un editor da riga di comando come nanofunziona.

Finestra di dialogo di salvataggio di macOS con MyScript.command selezionato come file di testo semplice sul Desktop.
Salva lo script con l'estensione .command in una posizione facilmente accessibile.

2. Salvalo con .commandun'estensione

Salva il file di testo semplice con un nome descrittivo, ad esempio MyScript.command. L'estensione aiuta il Finder ad aprire lo script nel Terminale quando ci fai doppio clic. La documentazione per sviluppatori archiviata da Apple descrive questo flusso di lavoro con doppio clic per gli script di shell. Controlla il nome finale nel Finder: se termina con .command.txt, rinominalo in modo che l'estensione finale sia solo .command. Mantieni l'esempio in una posizione come il Desktop mentre lo configuri.

Se macOS chiede quale estensione utilizzare, mantieni .commande conferma che Finder non ha aggiunto .txt.

3. Rendere lo script eseguibile

Apri il Terminale e concedi al tuo account l'autorizzazione per eseguire il file. Per l'esempio salvato sul Desktop, inserisci:

chmod u+x "$HOME/Desktop/MyScript.command"

Premi Invio. u+xAggiunge i permessi di esecuzione per il proprietario; le virgolette proteggono i percorsi con spazi. Sostituisci il percorso di esempio se necessario. Trascina il file nel Terminale o usa il menu Opzione-clic del Finder per copiare il suo percorso. Apple mostra lo stesso metodo nelle sue istruzioni sui file eseguibili .

Una finestra del Terminale che mostra l'applicazione del comando chmod u+x al file MyScript.command sul Desktop.
Il comando chmod aggiunge i permessi di esecuzione per il proprietario del file.

4. Eseguire lo script

Fai doppio clic MyScript.commandnel Finder per eseguirlo nel Terminale. L'output e gli errori verranno visualizzati lì. In alternativa, inserisci il percorso completo:

"$HOME/Desktop/MyScript.command"

Oppure spostati prima nella cartella, quindi anteponi al nome del file il prefisso ./:

cd "$HOME/Desktop"
./MyScript.command

Questo ./comando indica alla shell di eseguire un file nella cartella corrente. La guida ai comandi del Terminale di Apple spiega come eseguire un file eseguibile tramite percorso.

Una finestra del terminale che esegue MyScript.command e visualizza l'output Script in esecuzione.
Esegui il file specificandone il percorso e controlla l'output nel Terminale.

Risolvere gli errori comuni

  • "Permesso negato": verifica di aver eseguito il comando chmod u+xsul file corretto. Se necessario, ripeti il ​​comando utilizzando il percorso esatto del file. Rendere un file eseguibile non autorizza tutti i comandi al suo interno.
  • "File o directory non esistente": verifica la posizione e l'ortografia, inclusa l'estensione. Un file salvato accidentalmente con un nome diverso MyScript.command.txtnon corrisponderà al comando precedente. Trascinare il file nel Terminale può essere utile per inserire il percorso corretto.
  • Un comando funziona se digitato ma non nello script: lo script potrebbe utilizzare una shell diversa o basarsi su alias, variabili d'ambiente o una directory di lavoro dalla sessione interattiva del Terminale. Utilizza lo shebang corretto, evita di affidarti agli alias e specifica esplicitamente i percorsi dei file. Se i comandi necessitano di una cartella specifica, aggiungi la cdriga appropriata all'inizio dello script.

Assicurati di comprendere le autorizzazioni prima di condividere.

La parte relativa all'esecuzione è separata dalle autorizzazioni di privacy. Uno script viene normalmente eseguito con il tuo account; utilizzalo sudosolo per i comandi che richiedono privilegi di amministratore.

macOS potrebbe richiedere l'accesso a cartelle protette o ad altre app. Esamina ogni richiesta e concedi solo ciò che è necessario. Controlla il menu Apple > Impostazioni di Sistema > Privacy e Sicurezza per File e Cartelle e le relative impostazioni sulla privacy . Le autorizzazioni dipendono dall'accesso richiesto e dall'app che lo richiede; non si tratta di autorizzazioni generiche per singolo comando e non vengono condivise con gli script.

Prima di eseguire o condividere uno script, leggi ogni riga e assicurati di aver capito cosa modifica. Un .commandfile è comodo perché può essere eseguito all'apertura, quindi utilizza solo file provenienti da fonti attendibili.

Lascia un commento

Come fare screenshot su Mac: una guida completa

Come fare screenshot su Mac: una guida completa

Scopri come fare screenshot su Mac con le scorciatoie per la schermata intera, un'area specifica o una finestra, oltre a suggerimenti sull'app Screenshot, gli appunti, la modifica e la posizione di salvataggio.

Come aggiungere più immagini a un singolo PDF su macOS

Come aggiungere più immagini a un singolo PDF su macOS

Unisci più immagini in un unico PDF su macOS utilizzando Finder o Anteprima. Controlla l'ordine delle pagine, evita il ritaglio e correggi le pagine mancanti senza bisogno di software aggiuntivo.

Come visualizzare gli FPS su macOS: Steam e l'HUD Metal di Apple

Come visualizzare gli FPS su macOS: Steam e l'HUD Metal di Apple

Scopri come visualizzare gli FPS su Mac con l'overlay delle prestazioni di Steam o con l'HUD Metal Performance di Apple, oltre alle soluzioni per i casi in cui il contatore non viene visualizzato.

Come chiudere forzatamente un'app su Mac: 5 modi rapidi per farlo

Come chiudere forzatamente un'app su Mac: 5 modi rapidi per farlo

Utilizza la combinazione di tasti Opzione-Comando-Esc per forzare la chiusura di un'app Mac che non risponde, oppure chiudila dal menu Apple, dal Dock, da Monitoraggio Attività o dal Terminale.

Come utilizzare la modalità Schermo diviso su Mac: affiancare due app

Come utilizzare la modalità Schermo diviso su Mac: affiancare due app

Configura la visualizzazione a schermo diviso, ridimensiona o sostituisci un riquadro, usa Mission Control e scopri quando la disposizione a riquadri del desktop è più adatta al tuo Mac.

Come rimuovere i dati EXIF ​​dalle foto su macOS

Come rimuovere i dati EXIF ​​dalle foto su macOS

Scopri come rimuovere i dati EXIF ​​dalle foto su macOS, nascondere la posizione in Foto, pulire le copie JPEG esportate con ExifTool e verificare il risultato.

Come sincronizzare due cartelle su un Mac in modo sicuro

Come sincronizzare due cartelle su un Mac in modo sicuro

Sincronizza due cartelle su Mac con SyncTwoFolders, scegli un aggiornamento unidirezionale o bidirezionale e visualizza in anteprima le modifiche prima che i file vengano sostituiti o rimossi.

Come eseguire il backup di un blog Tumblr su un Mac

Come eseguire il backup di un blog Tumblr su un Mac

Esegui il backup del tuo blog Tumblr sul Mac utilizzando l'esportazione web di Tumblr. Scarica ed estrai il file ZIP, proteggi i post e i contenuti multimediali e scopri cosa non viene incluso nell'archivio.

Come utilizzare Google Maps su un computer Mac

Come utilizzare Google Maps su un computer Mac

Utilizza Google Maps sul tuo Mac in Safari o Chrome, trova luoghi e percorsi, cambia i livelli della mappa e aggiungi un'app web di Safari al Dock su macOS Sonoma 14 o versioni successive.

I 5 migliori convertitori gratuiti da WAV a MP3 per Windows e macOS

I 5 migliori convertitori gratuiti da WAV a MP3 per Windows e macOS

Confronta cinque convertitori gratuiti da WAV a MP3 per Windows e macOS, tenendo conto dei limiti di file online, degli strumenti di elaborazione batch locali e delle pratiche impostazioni di esportazione.