Mam kilka poleceń terminala, których używam do rozwiązywania problemów, wpisując je po kolei w oknie terminala.
Te polecenia wymagają podania hasła użytkownika.
Szukam sposobu na utworzenie uniwersalnego (skryptu) pliku za pomocą tych poleceń. Chcę móc uruchomić plik na komputerze Mac, klikając go dwukrotnie lub przeciągając plik na ikonę Terminala.
Nigdy wcześniej czegoś takiego nie robiłem. Czy jest sposób na stworzenie takiego scenariusza? Proszę o poradę.
Komentarze
Odpowiedź
Krótka odpowiedź
A .command
skrypt powinien załatwić sprawę
Krok po kroku
- Otwórz TextEdit i utwórz nowy plik
- Konwertuj do zwykłego tekstu, klikając opcję Format> Utwórz zwykły tekst
-
Dodaj polecenia, po jednym w każdym wierszu. Na przykład możesz zrobić:
#! /bin/bash cd ~/Desktop mkdir myCoolFolder cd myCoolFolder
-
Uruchom
chmod u+x ~/Desktop/myCommandScript.command
w Twój terminal, gdzie~/Desktop/myCommandScript.command
to ścieżka do twojego skryptu. Umożliwi to terminalowi uruchomienie pliku. - Gotowe! Kliknij dwukrotnie plik do uruchomienia. Przeciąganie po ikonie terminala również zadziała.
Uwagi:
- Jeśli chcesz zrobić coś, co wymaga uprawnień administratora (administratora), możesz poprzedzić swoje polecenie ciągiem
sudo
. Po uruchomieniu skryptu „będziesz musiał wprowadzić swoje hasło (i być administratorem) - Jeśli użytkownik końcowy nie jest administratorem, ale musisz zrobić coś, co wymaga uprawnień roota, możesz użyć
su someAdminName
, który wykona polecenie jakosomeAdminName
(będziesz potrzebować jego hasła).
Możesz również zobaczyć tutaj w Stack Overflow, aby uzyskać nieco więcej informacji.
Komentarze
- Czy istnieje sposób, aby plik poleceń nie wylogowywał się? Chcę mieć plik poleceń, który otwiera terminal ze wstępnie zdefiniowaną zmienną ścieżkową.
Odpowiedź
Skrypt jest tylko seria poleceń, więc możesz umieścić je w skrypcie basha.
#!/bin/bash command 1 command 2 command 3
Teraz wszystko zależy od ich typów poleceń oraz od tego, czy wymagają interwencji użytkownika.
Jeśli jednak otrzymujesz informacje diagnostyczne, na przykład, możesz mieć skrypt, który to robi
#!/bin/bash # Get SMART status of main drive diskutil info disk0 | grep -i smart # Get the model of the machine in question system_profiler SPHardwareDataType | grep -i Identifier
To tylko przykłady . Należy pamiętać, że wszelkie wygenerowane dane wyjściowe zostaną przesłane do konsoli (ekranu). Możesz jednak przekierować dane wyjściowe do pliku, dołączając >> /path/to/outputfile.txt
na końcu każdego polecenia, dzięki czemu masz plik, który możesz przeanalizować po zakończeniu działania pliku.
Możesz nazwać plik diagnostics.sh
i umieścić go w dowolnym miejscu. Po prostu upewnij się, że wykonujesz to polecenie, wydając polecenie chmod +x diagnostics.sh
i użyj ./diagnostics.sh
, aby go wykonać, lub kliknij go dwukrotnie, aby go uruchomić, jeśli jest zapisany na pulpicie .
alias
np.alias ns="sudo netstat -tulpn"
. Mógłbyś nawet umieścić je w liniach@reboot
w Crontab, gdybyś chciał je mieć przy każdym uruchomieniu. Teraz mogę po prostu wpisaćns
. Błogość.