🍎 macOS: терминал и утилиты
Команды macOS: Homebrew, defaults, launchctl, диски, сеть, горячие клавиши и отличия от Linux.
Шпаргалки · Администрирование · #macos #terminal #commands
Основы
macOS основана на Unix (Darwin): работают ls, cd, grep, ssh, curl. Оболочка по умолчанию zsh (~/.zshrc). Утилиты BSD отличаются от GNU (sed -i '', date, ls --color нет: используйте ls -G).
Homebrew (пакеты)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install git node # пакеты
brew install --cask firefox # приложения
brew update && brew upgrade
brew list; brew search name; brew uninstall name; brew services list
Открыть и копировать
open . # Finder в текущей папке
open -a "Visual Studio Code" file.txt
open https://example.com
pbcopy < file.txt # в буфер обмена
pbpaste > out.txt # из буфера
say "Привет" # озвучить текст
Система
sw_vers # версия macOS
system_profiler SPHardwareDataType
uname -a; uptime; top -o cpu; caffeinate -d # не засыпать
diskutil list; diskutil info disk0; diskutil eraseDisk APFS Name disk2
df -h; du -sh *
softwareupdate -l # доступные обновления
Настройки (defaults)
defaults write com.apple.finder AppleShowAllFiles -bool true && killall Finder # скрытые файлы
defaults write com.apple.screencapture location ~/Screenshots
defaults read com.apple.dock
Службы (launchd)
launchctl list
launchctl load ~/Library/LaunchAgents/com.me.job.plist
launchctl unload ~/Library/LaunchAgents/com.me.job.plist
Папки: ~/Library/LaunchAgents (пользователь), /Library/LaunchDaemons (система).
Сеть
networksetup -listallhardwareports
ifconfig; ipconfig getifaddr en0; scutil --dns
networkQuality; sudo lsof -iTCP -sTCP:LISTEN -n -P
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder # сброс DNS
Безопасность
xattr -d com.apple.quarantine app.app # снять карантин
sudo spctl --master-disable # Gatekeeper (небезопасно)
csrutil status # SIP (из режима восстановления отключается)
Горячие клавиши
Cmd+Space Spotlight, Cmd+Tab приложения, Cmd+Q выйти, Cmd+W закрыть окно, Cmd+Shift+. скрытые файлы, Cmd+Shift+4 снимок области, Cmd+Opt+Esc принудительное завершение, Ctrl+Cmd+Q блокировка.