Графический интерфейс, конечно, удобен. Он как уютное кафе: всё на виду, понятно и предсказуемо. Но иногда тебе нужен не уют, а кувалда, чтобы пробить стену. Или скальпель, чтобы добраться до самого сердца системы. Для меня, человека, который уже лет двадцать ковыряется в железе и софте, macOS Terminal — это не просто инструмент, это продолжение руки. Особенно когда нужно решать задачи, которые в российских реалиях 2025 года могут быть весьма специфическими.
В наше время, когда облака то доступны, то нет, а VPN-сервисы ведут себя как капризные подростки, прямой, низкоуровневый контроль над системой становится бесценным. Это не просто знание команд, это понимание того, как система дышит, чем живет, и где у нее болит. И поверьте, эти знания не взять из общих гайдов на каком-нибудь западном ресурсе, потому что там нет наших «особенностей».
- Файловый дирижер: когда finder не справляется
- ls: твой зоркий глаз
- cp, mv, rm: классика с предостережениями
- du и df: когда диск забит
- Сетевой дозор: где затык?
- ping и traceroute: первые шаги
- netstat и lsof: кто что слушает
- scutil --dns: когда dns сошел с ума
- Системный аудит: под капотом macos
- top и htop: кто жрет ресурсы
- kill -9 PID: экстренное торможение
Файловый дирижер: когда finder не справляется
Начнем с самого банального, но жизненно необходимого — работы с файлами. Finder, конечно, красив, но он как менеджер среднего звена: все делает медленно, с кучей вопросов и иногда вообще не то. Терминал здесь — ваш личный коммандос.
ls
: твой зоркий глаз
Мой вечный спутник. Забудьте про Finder, когда нужно быстро посмотреть содержимое каталога с правами и размерами. Команда ls -alh
покажет вам все, как на ладони: скрытые файлы, размеры в человекочитаемом формате, права доступа. Это не просто информация, это карта вашей файловой системы.
ls -alh ~/Documents/Projects/
Лайфхак: если вам нужно найти файлы, например, за определенный год или с конкретным расширением, используйте связку ls
и grep
. Например, чтобы найти все .log
файлы, созданные в 2024 году, можно попробовать что-то вроде:
ls -alh | grep "2024" | grep ".log"
Помню, как-то раз, на удаленке, когда интернет шалил, и я не мог открыть большой каталог в Finder (он просто зависал намертво), ls
спас ситуацию. Нужно было найти конфиг, который я забыл куда засунул. За пару секунд я нашел его, хотя Finder мог бы и не ожить.
cp
, mv
, rm
: классика с предостережениями
Классика жанра. Копировать, перемещать, удалять. Но здесь есть нюансы, о которых часто забывают новички.
cp -R
: для копирования папок. Если забудете-R
(рекурсивно), скопируете только пустую папку.mv
: перемещает файлы или переименовывает их. Универсальный солдат.rm -rf
: вот тут кроется дьявол.r
— рекурсивно (удаляет содержимое папок),f
— форсированно (без подтверждения). Каждый сисадмин знает эту шутку, которая может стать трагедией. Всегда, слышите, всегда перепроверяйте путь! Мне однажды чуть не пришлось объяснять руководству, почему бэкапы всей компании исчезли. Я перепутал удаленный сервер с локальным каталогом. Руки тряслись, ноCtrl+C
сработал быстрее, чемEnter
. Этот случай научил меня никогда не набиратьrm -rf /
илиrm -rf .*
без двойной проверки пути.
Лайфхак: используйте клавишу Tab
для автодополнения путей и имен файлов. Это не просто фича, это мастхэв, чтобы не совершить фатальную опечатку. Она спасает нервы и данные.
du
и df
: когда диск забит
Когда диск забит под завязку, и нужно понять, кто виноват, эти команды — ваши лучшие друзья. Особенно актуально, когда работаешь с большими проектами, где кэши NPM, Docker, или Xcode могут разрастаться до неприличия, занимая сотни гигабайт.
du -sh *
: покажет размер каждой папки в текущем каталоге.df -h
: покажет использование всех дисков в системе.
Лайфхак: du -sh * | sort -rh
. Эта связка сразу покажет, кто живет не по средствам, отсортировав папки по размеру от большего к меньшему. Недавно у клиента макбук начал тормозить. Finder показывал в разделе «Разное» сотни гигабайт, а du
сразу указал на кэш Xcode, занимавший 100+ ГБ. Очистка его через терминал решила проблему за минуту.
Сетевой дозор: где затык?
Проблемы с сетью? В условиях нестабильности внешних каналов и периодических блокировок, ping
и traceroute
становятся твоими лучшими друзьями для определения, где именно затык: у тебя, у провайдера, или где-то «там, за горизонтом».
ping
и traceroute
: первые шаги
ping ya.ru
: проверяем доступность хоста. Если пинги идут, значит, связь есть. Если нет — копаем дальше.
ping ya.ru
traceroute ya.ru
: покажет весь путь пакета до цели. Если пакеты «зависают» на каком-то из узлов, вы сразу поймете, где проблема: на вашем роутере, у провайдера или где-то дальше. Особенно полезно, когда используешь несколько VPN-туннелей или корпоративный DNS, и что-то идет не так.
traceroute ya.ru
netstat
и lsof
: кто что слушает
Когда какой-то сервис не запускается, потому что порт уже занят, или вы просто хотите понять, какие приложения используют сеть, эти команды незаменимы.
netstat -an | grep LISTEN
: покажет все открытые порты, которые что-то слушают.lsof -i :8080
: еслиnetstat
показывает порт, а ты не понимаешь, кто его занял,lsof
покажет процесс, который его использует.
Лайфхак: в прошлом месяце пытался запустить локальный сервер для тестового проекта, а он никак не поднимался. Оказалось, Skype умудрился занять нужный порт 8080. lsof
спас пару часов нервов, которые могли бы уйти на безуспешные перезагрузки.
scutil --dns
: когда dns сошел с ума
Проблемы с DNS? Это твой инструмент. Особенно актуально, когда вы переключаетесь между разными сетями, VPN-ами, или у вас настроен корпоративный DNS. Иногда macOS кеширует старые DNS-записи, и очистить их через GUI проблематично.
scutil --dns
Покажет текущие DNS-серверы и кеш. Если что-то не так, можно попробовать сбросить кеш: sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
. Эта пара команд — ваш билет к нормальной работе с интернетом, когда браузеры не могут найти сайты, хотя пинг идет.
Системный аудит: под капотом macos
Иногда нужно заглянуть глубже, чем позволяют стандартные утилиты macOS. Мониторинг процессов, тонкая настройка системы — здесь терминал раскрывает всю свою мощь.
top
и htop
: кто жрет ресурсы
Стандартный top
показывает процессы и их потребление ресурсов. Но он, честно говоря, как черно-белый телевизор. htop
— это уже цветной, с пультом и всеми наворотами. Его нужно установить через Homebrew (об этом ниже), но оно того стоит.
top -o cpu
Покажет процессы, отсортированные по потреблению CPU. Замените cpu
на rsize
, чтобы увидеть, кто жрет оперативку.
htop
Один раз поставил htop
через Homebrew, и забыл про стандартный top
как про страшный сон. Это как пересесть с Жигулей на иномарку. Визуально, интуитивно, с возможностью убивать процессы прямо из интерфейса.
kill -9 PID
: экстренное торможение
Когда приложение зависло намертво и не реагирует ни на что, даже на «Завершить принудительно» из Activity Monitor, на помощь приходит kill -9
. Но используйте с осторожностью. Это как дефибриллятор: применять только когда пациент совсем плох, иначе можно убить систему или потерять данные.
kill -9 12345
(где 12345 —