Ostatnio podawałem sposób na włączenie powtórzeń na klawiaturze Apple za pomocą komendy w Terminalu. W aplikacji Terminal możemy jednak zdziałać o wiele wiele więcej. Poniżej przedstawię 180 ciekawych komend, które zaprezentują Wam sporą część możliwości linii komend systemu OS X.

Strona 12 z 12

System

System Apple

AirDrop

# Włącz AirDrop poprzez Ethernet i na niewspieranych Makach
defaults write com.apple.NetworkBrowser BrowseAllInterfaces -bool true

# Włącz (Domyślnie)
defaults remove com.apple.NetworkBrowser DisableAirDrop

# Wyłącz
defaults write com.apple.NetworkBrowser DisableAirDrop -bool YES

AppleScript

Wykonaj AppleScript
osascript /path/to/script.scpt

Podstawy

Porównaj dwa foldery
diff -qr /path/to/folder1 /path/to/folder2
Restart systemu
sudo reboot
Wyłączenie systemu
sudo poweroff
Pokaż wersję systemu
sw_vers
Pokaż czas od ostatniego restartu (Uptime)
 uptime

Schowek

Przekopiuj dane do schowka
cat whatever.txt | pbcopy
Skonwertuj zawartość schowka do Plain Textu
pbpaste | textutil -convert txt -stdin -stdout -encoding 30 | pbcopy
Skonwertuj TAB'y w schowku do SPACJI
pbpaste | expand | pbcopy
Skopiuj dane ze schowka
pbpaste > whatever.txt
Posortuj usuń zduplikowane linie ze schowka
pbpaste | sort | uniq | pbcopy

FileVault

Automatycznie odblokuj FileVault po restarcie

Jeżeli FileVault jest włączony na obecnym wolumenie to po restarcie nie będzie konieczne podawanie hasła. Komenda może nie działać na wszystkich systemach.

sudo fdesetup authrestart
Serwis FileVault
# Status
sudo fdesetup status

# Włącz
sudo fdesetup enable

# Wyłącz (Domyślnie)
sudo fdestatus disable

Informacje/Raporty

Wygeneruj zaawansowany raport systemu i wydajności
sudo sysdiagnose -f ~/Desktop/

Rozszerzenia jądra systemu

Wyświetl status załadowanych rozszerzeń jądra systemu
sudo kextstat -l
Załaduj rozszerzenie jądra systemu
sudo kextload -b com.apple.driver.ExampleBundle
Rozładuj rozszerzenie jądra systemu
sudo kextunload -b com.apple.driver.ExampleBundle

LaunchServices

Przebuduj bazę danych LaunchServices

Wcześniej należy przebudować bazę danych dla locate

sudo $(locate lsregister) -kill -seed -r

Okno logowania

Ustaw tekst w oknie logowania
sudo defaults write /Library/Preferences/com.apple.loginwindow LoginwindowText "Twój tekst"

Zarządzanie pamięcią

Wyczyść pamięć cache
sudo purge
Pokaż statystyki pamięci
# One time
vm_stat

# Tabela danych, powtórz 10 razy, 1 sekunda przerwy pomiędzy odczytami
vm_stat -c 10 1

Centrum powiadomień

Usługa centrum powiadomień
# Wyłącz
launchctl unload -w /System/Library/LaunchAgents/com.apple.notificationcenterui.plist && \
killall -9 NotificationCenter

# Włącz (Domyślnie)
launchctl load -w /System/Library/LaunchAgents/com.apple.notificationcenterui.plist

QuickLook

Podgląd pliku poprzez QuickLook
qlmanage -p /path/to/file

Zdalne Apple Events

# Status
sudo systemsetup -getremoteappleevents

# Włącz
sudo systemsetup -setremoteappleevents on

# Wyłącz (Domyślnie)
sudo systemsetup -setremoteappleevents off

Użytkownik Root

# Aktywuj
dsenableroot

# Deaktywuj
dsenableroot -d

Uruchamianie w Safe Mode

# Status
nvram boot-args

# Włącz
sudo nvram boot-args="-x"

# Wyłącz
sudo nvram boot-args=""

Zrzuty ekranu

Zrób opóźniony zrzut ekranu

Zrobi zrzut ekranu w formacie JPEG z opóźnieniem 3 sekund i wyświetleniem w aplikacji Preview/Podgląd

screencapture -T 3 -t jpg -P delayedpic.jpg
Zapisuj zrzuty ekranu w podanej lokalizacji

Zrzuty ekranu będą zapisywane w ~/Desktop

defaults write com.apple.screencapture location ~/Desktop && \
killall SystemUIServer
Ustaw format dla zrzutów ekranu

Zapis ustawiony do formatu png. Możliwe formaty: bmp, gif, jpg, jpeg, pdf, tiff.

defaults write com.apple.screencapture type -string "png"
Wyłącz cień w zrzutach ekranu
defaults write com.apple.screencapture disable-shadow -bool true && \
killall SystemUIServer
Ustaw domyślną nazwę dla zrzutów ekranu

Data i czas pozostaną niezmienione

defaults write com.apple.screencapture name "Example name" && \
killall SystemUIServer

Instalacja oprogramowania

Instalacja PKG
installer -pkg /path/to/installer.pkg -target /

Aktualizacja oprogramowania

Zainstaluj wszystkie dostępne aktualizacje
sudo softwareupdate -ia
Ustaw czas pomiędzy sprawdzaniem dostępnych aktualizacji

Ustawi sprawdzanie codzienne zamiast cotygodniowego

defaults write com.apple.SoftwareUpdate ScheduleFrequency -int 1
Pokaż dostępne aktualizacje
sudo softwareupdate -l
Ustaw serwer aktualizacji

Należy to zrobić tylko w celach testowych

# Użyj własnego serwera
sudo defaults write /Library/Preferences/com.apple.SoftwareUpdate CatalogURL http://su.example.com:8088/index.sucatalog

# Użyj serwera Apple
sudo defaults delete /Library/Preferences/com.apple.SoftwareUpdate CatalogURL

Spotlight

Indeksowanie Spotlight
# Wyłącz
mdutil -i off -d /path/to/volume

# Włącz (Domyślnie)
mdutil -i on /path/to/volume
Wyczyść indeks Spotlight i przebuduj
mdutil -E /path/to/volume
Szukaj poprzez Spotlight
mdfind -name 'searchterm'
Pokaż zindeksowane metadane Spotlight
mdls /path/to/file

Ochrona integralności systemu

Wyłącz ochronę integralności systemu

Zrestartuj komputer z wciśniętymi Cmd + R, otwórz Terminal i wykonaj komendę:

csrutil disable && reboot
Włącz ochronę integralności systemu

Zrestartuj komputer z wciśniętymi Cmd + R, otwórz Terminal i wykonaj komendę:

csrutil enable && reboot

Data i Czas

Pokaż dostępne strefy czasowe
sudo systemsetup -listtimezones
Ustaw strefę czasową
sudo systemsetup -settimezone Europe/Warsaw
Ustawiaj zegar korzystając z czasu sieciowego
# Status
sudo systemsetup getusingnetworktime

# Włącz (Domyślnie)
sudo systemsetup setusingnetworktime on

# Wyłącz
sudo systemsetup setusingnetworktime off

Wszystkie komendy wykonujecie na własną odpowiedzialność. Ich możliwości są skierowane przede wszystkim dla bardziej doświadczonych użytkowników

Źródło: GitHub Zdjęcie tytułowe: techradar