Cum se execută comenzi de terminal dintr-un script pe macOS

Pentru a executa comenzi Terminal dintr-un script pe macOS, introduceți-le într-un script shell în text simplu, faceți-l executabil, apoi rulați-l din Finder sau Terminal. Folosiți o .commandextensie pentru a-l deschide făcând dublu clic. Un script nu ocolește controalele de confidențialitate macOS și nu acordă privilegii de administrator.

O fereastră a editorului de text simplu care afișează o comandă shebang zsh și o comandă echo în MyScript.command.
Un script shell scurt începe cu un shebang care selectează zsh.

1. Scrieți comenzile într-un fișier text simplu

Un script shell este un fișier text care conține comenzi. Începeți-l cu un shebang , prima linie care îi spune macOS ce shell ar trebui să interpreteze fișierul. Shell-ul implicit în prezent pentru ferestrele noi de Terminal este zsh, deși un administrator poate seta o valoare implicită diferită, așa cum explică Apple în ghidul său Terminal . Acest exemplu folosește explicit zsh:

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

Puneți comenzile pe linii separate sub shebang. Shebang-ul alege interpretorul, deci folosiți sintaxa pe care o suportă; un script Bash, de exemplu, poate începe cu #!/bin/bash. Ghidul Apple pentru scripturi shell explică elementele de bază.

Puteți utiliza TextEdit, dar asigurați-vă că fișierul este text simplu: documentele TextEdit noi pot fi text îmbogățit. Alegeți Format > Transformare în text simplu sau setați formatul de document nou al TextEdit la Text simplu în setările sale. Formatarea text îmbogățit nu este cod shell. Apple documentează aceste opțiuni în ghidul său TextEdit . Funcționează și un editor de cod sau un editor de linie de comandă, cum ar fi nano.

O casetă de dialog pentru salvare în macOS cu MyScript.command selectată ca fișier text simplu pe Desktop.
Salvați scriptul cu extensia .command într-o locație pe care o puteți găsi.

2. Salvați-l cu o .commandextensie

Salvați fișierul text simplu cu un nume descriptiv, cum ar fi MyScript.command. Extensia ajută Finder să deschidă scriptul în Terminal când faceți dublu clic pe el. Documentația pentru dezvoltatori arhivată de Apple descrie acest flux de lucru cu dublu clic pentru scripturile shell. Verificați numele final în Finder: dacă se termină în .command.txt, redenumiți-l astfel încât extensia finală să fie doar .command. Păstrați exemplul într-o locație precum Desktopul în timp ce îl configurați.

Dacă macOS întreabă ce extensie să utilizeze, păstrați .commandși confirmați că Finder nu a adăugat .txt.

3. Faceți scriptul executabil

Deschideți Terminalul și acordați contului dvs. permisiunea de a executa fișierul. Pentru exemplul salvat pe Desktop, introduceți:

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

Apăsați Enter. u+xAdaugă permisiunea de execuție pentru proprietar; ghilimelele protejează căile cu spații. Înlocuiți calea exemplu dacă este necesar. Trageți fișierul în Terminal sau utilizați meniul Option-clic din Finder pentru a copia numele căii sale. Apple prezintă aceeași metodă în instrucțiunile pentru fișierele executabile .

O fereastră Terminal care arată chmod u+x aplicat fișierului Desktop MyScript.command.
Comanda chmod adaugă permisiunea de execuție pentru proprietarul fișierului.

4. Rulați scriptul

Faceți dublu clic MyScript.commandîn Finder pentru a-l rula în Terminal. Rezultatul și erorile apar acolo. Sau introduceți calea completă:

"$HOME/Desktop/MyScript.command"

Sau schimbați mai întâi folderul, apoi adăugați prefixul numelui fișierului cu ./:

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

Acesta ./îi spune shell-ului să ruleze un fișier din folderul curent. Ghidul de comenzi Terminal de la Apple explică cum se rulează un executabil după numele căii.

O fereastră de Terminal care rulează MyScript.command și afișează rezultatul Scriptul rulează.
Rulați fișierul după calea sa și verificați rezultatul în Terminal.

Depanarea erorilor frecvente

  • „Permisiune refuzată”: Verificați dacă ați executat comanda chmod u+xpe fișierul corect. Dacă este necesar, repetați comanda folosind calea exactă a fișierului. Faptul că un fișier este executabil nu autorizează fiecare comandă din interiorul acestuia.
  • „Nu există un astfel de fișier sau director”: Confirmați locația și ortografia, inclusiv extensia. Un fișier salvat accidental ca MyScript.command.txtnu se va potrivi cu comanda de mai sus. Tragerea fișierului în Terminal poate ajuta la inserarea căii sale.
  • O comandă funcționează atunci când este tastată, dar nu în script: Scriptul poate utiliza o altă shell sau se poate baza pe aliasuri, variabile de mediu sau un director de lucru din sesiunea interactivă Terminal. Folosește shebang-ul corect, evită să te bazezi pe aliasuri și specifică explicit căile fișierelor. Dacă comenzile necesită un anumit folder, adaugă o cdlinie corespunzătoare lângă începutul scriptului.

Înțelegeți permisiunile înainte de partajare

Bitul de execuție este separat de permisiunile de confidențialitate. Un script rulează în mod normal ca și contul dvs.; utilizați-l sudodoar pentru comenzi care necesită privilegii de administrator.

Este posibil ca macOS să solicite acces la foldere protejate sau la alte aplicații. Examinați fiecare solicitare și permiteți doar ceea ce este necesar. Verificați meniul Apple > Setări sistem > Confidențialitate și securitate pentru Fișiere și foldere și setările de confidențialitate aferente . Aprobările depind de accesul solicitat și de aplicația care face solicitarea; acestea nu sunt permisiuni generale per comandă și nu sunt incluse într-un script partajat.

Înainte de a rula sau partaja un script, citește fiecare linie și asigură-te că înțelegi ce modifică. Un .commandfișier este util deoarece poate rula atunci când este deschis, așa că folosește doar fișiere din surse în care ai încredere.

Lasă un comentariu

Cum să faci o captură de ecran pe Mac: Un ghid complet

Cum să faci o captură de ecran pe Mac: Un ghid complet

Află cum să faci capturi de ecran pe Mac cu comenzi rapide pentru ecran complet, o zonă sau o fereastră, plus sfaturi despre aplicația Captură de ecran, clipboard, editare și salvarea locației.

Cum să adăugați mai multe imagini la un singur PDF pe macOS

Cum să adăugați mai multe imagini la un singur PDF pe macOS

Combină mai multe imagini într-un singur PDF pe macOS folosind Finder sau Preview. Controlează ordinea paginilor, evită decuparea și corectează paginile lipsă fără software suplimentar.

Cum să vezi FPS pe macOS: Steam și Metal HUD de la Apple

Cum să vezi FPS pe macOS: Steam și Metal HUD de la Apple

Află cum să afișezi FPS pe un Mac cu ajutorul suprapunerii de performanță Steam sau al HUD-ului de performanță Metal de la Apple, plus remedieri pentru situațiile în care contorul nu apare.

Cum să forțezi închiderea pe un Mac: 5 metode rapide de a închide o aplicație

Cum să forțezi închiderea pe un Mac: 5 metode rapide de a închide o aplicație

Folosește Option-Command-Esc pentru a forța închiderea unei aplicații Mac care nu răspunde sau pentru a o închide din meniul Apple, Dock, Monitor activitate sau Terminal.

Cum se utilizează ecranul divizat pe Mac: Puneți două aplicații una lângă alta

Cum se utilizează ecranul divizat pe Mac: Puneți două aplicații una lângă alta

Configurați Split View, redimensionați sau înlocuiți un panou, utilizați Mission Control și aflați când configurarea în dale a ferestrelor desktopului este mai potrivită pe Mac.

Cum să elimini datele EXIF ​​din fotografii pe macOS

Cum să elimini datele EXIF ​​din fotografii pe macOS

Află cum să elimini datele EXIF ​​din fotografii pe macOS, să ascunzi locația în Poze, să cureți copiile JPEG exportate cu ExifTool și să verifici rezultatul.

Cum să sincronizați două foldere pe un Mac în siguranță

Cum să sincronizați două foldere pe un Mac în siguranță

Sincronizează două foldere pe un Mac cu SyncTwoFolders, alege o actualizare unidirecțională sau bidirecțională și previzualizează modificările înainte ca fișierele să fie înlocuite sau eliminate.

Cum să faci o copie de rezervă a unui blog Tumblr pe un Mac

Cum să faci o copie de rezervă a unui blog Tumblr pe un Mac

Fă o copie de rezervă a unui blog Tumblr pe Mac cu ajutorul exportului web din Tumblr. Descarcă și dezarhivează fișierul ZIP, păstrează în siguranță postările și fișierele media și află ce omite arhiva.

Cum se utilizează Google Maps pe un desktop Mac

Cum se utilizează Google Maps pe un desktop Mac

Folosește Google Maps pe Mac în Safari sau Chrome, găsește locuri și rute, schimbă straturile hărții și adaugă o aplicație web Safari în Dock pe macOS Sonoma 14 sau o versiune ulterioară.

5 Cele mai bune convertoare gratuite WAV în MP3 pentru Windows și macOS

5 Cele mai bune convertoare gratuite WAV în MP3 pentru Windows și macOS

Compară cinci convertoare WAV-MP3 gratuite pentru Windows și macOS, inclusiv limite pentru fișiere online, instrumente locale de procesare în loturi și setări practice de export.