Jak uruchamiać polecenia terminala ze skryptu w systemie macOS

Aby uruchomić polecenia terminala ze skryptu w systemie macOS, umieść je w skrypcie powłoki w postaci zwykłego tekstu, nadaj mu atrybut wykonywalności, a następnie uruchom go w Finderze lub Terminalu. Użyj .commandrozszerzenia, aby otworzyć skrypt, klikając go dwukrotnie. Skrypt nie omija kontroli prywatności w systemie macOS ani nie przyznaje uprawnień administratora.

Okno edytora zwykłego tekstu pokazujące polecenie zsh shebang i echo w MyScript.command.
Krótki skrypt powłoki zaczyna się od polecenia shebang, które wybiera zsh.

1. Zapisz polecenia w pliku tekstowym

Skrypt powłoki to plik tekstowy zawierający polecenia. Uruchom go za pomocą shebanga , pierwszego wiersza, który wskazuje systemowi macOS, która powłoka powinna interpretować plik. Obecnie domyślną powłoką dla nowych okien Terminala jest zsh, chociaż administrator może ustawić inną domyślną powłokę, jak wyjaśnia Apple w swoim przewodniku po Terminalu . W tym przykładzie jawnie użyto zsh:

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

Umieść polecenia w osobnych wierszach pod shebangiem. Shebang wybiera interpreter, więc użyj obsługiwanej przez niego składni; na przykład skrypt powłoki Bash może zaczynać się od . Podręcznik skryptów powłoki#!/bin/bash Apple'a wyjaśnia podstawy.

Możesz użyć programu TextEdit, ale upewnij się, że plik jest zwykłym tekstem: nowe dokumenty programu TextEdit mogą zawierać tekst sformatowany. Wybierz Format > Zamień na zwykły tekst lub ustaw format nowego dokumentu programu TextEdit na Zwykły tekst w jego ustawieniach. Formatowanie tekstu sformatowanego nie jest kodem powłoki. Apple dokumentuje te opcje w swoim podręczniku do programu TextEdit . Edytor kodu lub edytor wiersza poleceń, taki jak nano.

Okno dialogowe zapisu w systemie macOS z plikiem MyScript.command wybranym jako zwykły plik tekstowy na pulpicie.
Zapisz skrypt z rozszerzeniem .command w miejscu, które możesz znaleźć.

2. Zapisz z .commandrozszerzeniem

Zapisz plik tekstowy z opisową nazwą, taką jak MyScript.command. Rozszerzenie ułatwia Finderowi otwieranie skryptu w Terminalu po dwukrotnym kliknięciu. Archiwalna dokumentacja dla programistów Apple opisuje ten proces dwukrotnego kliknięcia dla skryptów powłoki. Sprawdź ostateczną nazwę w Finderze: jeśli kończy się na .command.txt, zmień ją tak, aby ostateczne rozszerzenie to tylko .command. Zachowaj przykład w miejscu takim jak Pulpit podczas konfiguracji.

Jeśli system macOS zapyta, jakiego rozszerzenia użyć, zachowaj je .commandi sprawdź, czy Finder nie dodał go .txt.

3. Uczyń skrypt wykonywalnym

Otwórz terminal i udziel swojemu kontu uprawnień do uruchomienia pliku. W przykładzie zapisanym na pulpicie wpisz:

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

Naciśnij Return. u+xDodaje uprawnienia do wykonywania dla właściciela; cudzysłowy chronią ścieżki spacjami. W razie potrzeby zastąp przykładową ścieżkę. Przeciągnij plik do Terminala lub użyj menu Option-click w Finderze, aby skopiować jego ścieżkę. Apple pokazuje tę samą metodę w instrukcjach dotyczących plików wykonywalnych .

Okno terminala pokazujące polecenie chmod u+x zastosowane do pliku Desktop MyScript.command.
Polecenie chmod dodaje właścicielowi pliku uprawnienia do wykonywania.

4. Uruchom skrypt

Kliknij dwukrotnie MyScript.commandw Finderze, aby uruchomić go w terminalu. Wyświetlą się tam dane wyjściowe i błędy. Możesz też wpisać pełną ścieżkę:

"$HOME/Desktop/MyScript.command"

Albo najpierw zmień folder, a następnie dodaj prefiks do nazwy pliku ./:

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

Polecenie ./to informuje powłokę o uruchomieniu pliku w bieżącym folderze. W podręczniku poleceń terminala firmy Apple wyjaśniono, jak uruchomić plik wykonywalny według ścieżki dostępu.

Okno terminala uruchamiające MyScript.command i wyświetlające wynik działania skryptu.
Uruchom plik według jego ścieżki i sprawdź dane wyjściowe w terminalu.

Rozwiązywanie typowych błędów

  • „Odmowa dostępu”: Sprawdź, czy uruchomiłeś chmod u+xwłaściwy plik. W razie potrzeby powtórz polecenie, używając dokładnej ścieżki dostępu do pliku. Nadanie plikowi atrybutu wykonywalnego nie autoryzuje wszystkich poleceń w nim zawartych.
  • „Brak takiego pliku lub katalogu”: Sprawdź lokalizację i pisownię, w tym rozszerzenie. Plik przypadkowo zapisany jako MyScript.command.txtnie będzie pasował do powyższego polecenia. Przeciągnięcie pliku do Terminala może pomóc w wpisaniu jego ścieżki.
  • Polecenie działa po wpisaniu, ale nie w skrypcie: Skrypt może używać innej powłoki lub opierać się na aliasach, zmiennych środowiskowych lub katalogu roboczym z sesji interaktywnego terminala. Używaj odpowiedniego shebanga, unikaj aliasów i jawnie określaj ścieżki do plików. Jeśli polecenia wymagają konkretnego folderu, dodaj odpowiedni cdwiersz na początku skryptu.

Przed udostępnieniem zapoznaj się z uprawnieniami

Bit wykonania jest niezależny od uprawnień prywatności. Skrypt zazwyczaj działa z Twojego konta; używaj go sudotylko w przypadku poleceń wymagających uprawnień administratora.

System macOS może prosić o dostęp do chronionych folderów lub innych aplikacji. Przejrzyj każde żądanie i zezwól tylko na niezbędny dostęp. Sprawdź menu Apple > Ustawienia systemowe > Prywatność i bezpieczeństwo dla Plików i folderów oraz powiązanych ustawień prywatności . Zezwolenia zależą od żądanego dostępu i aplikacji, która go zażądała; nie są to ogólne uprawnienia przypisane do konkretnego polecenia i nie są przesyłane wraz ze skryptem współdzielonym.

Przed uruchomieniem lub udostępnieniem skryptu przeczytaj każdy wiersz i upewnij się, że rozumiesz, co zmienia. .commandPlik jest wygodny, ponieważ można go uruchomić po otwarciu, dlatego korzystaj tylko z plików pochodzących z zaufanych źródeł.

Zostaw komentarz

Jak zrobić zrzut ekranu na komputerze Mac: kompleksowy przewodnik

Jak zrobić zrzut ekranu na komputerze Mac: kompleksowy przewodnik

Dowiedz się, jak wykonać zrzut ekranu na komputerze Mac, korzystając ze skrótów dla pełnego ekranu, obszaru lub okna. Dowiedz się także, jak korzystać z aplikacji Zrzut ekranu, schowka, edytować zrzut ekranu i wybierać odpowiednią lokalizację.

Jak dodać wiele obrazów do jednego pliku PDF w systemie macOS

Jak dodać wiele obrazów do jednego pliku PDF w systemie macOS

Połącz wiele obrazów w jeden plik PDF na macOS za pomocą Findera lub Podglądu. Kontroluj kolejność stron, unikaj przycinania i naprawiaj brakujące strony bez dodatkowego oprogramowania.

Jak wyświetlić liczbę klatek na sekundę (FPS) w systemie macOS: Steam i Metal HUD firmy Apple

Jak wyświetlić liczbę klatek na sekundę (FPS) w systemie macOS: Steam i Metal HUD firmy Apple

Dowiedz się, jak wyświetlić liczbę klatek na sekundę (FPS) na komputerze Mac za pomocą nakładki wydajnościowej Steam lub interfejsu Apple Metal Performance HUD, a także poznaj rozwiązania problemu, gdy licznik się nie wyświetla.

Jak wymusić zamknięcie systemu na komputerze Mac: 5 szybkich sposobów na zamknięcie aplikacji

Jak wymusić zamknięcie systemu na komputerze Mac: 5 szybkich sposobów na zamknięcie aplikacji

Użyj kombinacji klawiszy Option–Command–Esc, aby wymusić zamknięcie niedziałającej aplikacji Mac albo zamknij ją z menu Apple, Docku, Monitora aktywności lub Terminalu.

Jak korzystać z podzielonego ekranu na komputerze Mac: Umieść dwie aplikacje obok siebie

Jak korzystać z podzielonego ekranu na komputerze Mac: Umieść dwie aplikacje obok siebie

Skonfiguruj widok Split View, zmień rozmiar panelu lub go zamień, użyj Mission Control i dowiedz się, kiedy układ okien pulpitu będzie lepszym rozwiązaniem na Twoim komputerze Mac.

Jak usunąć dane EXIF ​​ze zdjęć w systemie macOS

Jak usunąć dane EXIF ​​ze zdjęć w systemie macOS

Dowiedz się, jak usuwać dane EXIF ​​ze zdjęć w systemie macOS, ukrywać lokalizację w Zdjęciach, czyścić wyeksportowane kopie JPEG za pomocą narzędzia ExifTool i weryfikować rezultaty.

Jak bezpiecznie synchronizować dwa foldery na komputerze Mac

Jak bezpiecznie synchronizować dwa foldery na komputerze Mac

Synchronizuj dwa foldery na komputerze Mac za pomocą SyncTwoFolders, wybierz aktualizację jednokierunkową lub dwukierunkową i wyświetl podgląd zmian przed zastąpieniem lub usunięciem plików.

Jak wykonać kopię zapasową bloga Tumblr na komputerze Mac

Jak wykonać kopię zapasową bloga Tumblr na komputerze Mac

Utwórz kopię zapasową bloga Tumblr na swoim Macu dzięki funkcji eksportu internetowego Tumblra. Pobierz i rozpakuj plik ZIP, zabezpiecz wpisy i multimedia oraz sprawdź, co archiwum pomija.

Jak korzystać z Map Google na komputerze Mac

Jak korzystać z Map Google na komputerze Mac

Korzystaj z Map Google na komputerze Mac w przeglądarce Safari lub Chrome, znajduj miejsca i trasy, przełączaj warstwy mapy i dodawaj aplikację internetową Safari do Docka w systemie macOS Sonoma 14 lub nowszym.

5 najlepszych darmowych konwerterów WAV do MP3 dla systemów Windows i macOS

5 najlepszych darmowych konwerterów WAV do MP3 dla systemów Windows i macOS

Porównaj pięć darmowych konwerterów WAV do MP3 dla systemów Windows i macOS, obejmujących m.in. limity plików online, narzędzia do przetwarzania wsadowego i praktyczne ustawienia eksportu.