9 хитростей терминала в Mac, которые должен знать каждый

9 хитростей командной строки в Мас

Командная строка, доступиться к которой обычно можно через приложение «Терминал», обычно считается уделом продвинутых пользователей, но это вовсе не значит, что это какая-то невероятно сложная штука сама по себе. Это доказывает следующая подборка возможностей Терминала, которая может оказаться полезной самому широкому кругу маководов.

Некоторые из этих возможностей могут потребовать наличия в системе Xcode, который можно бесплатно установить из Mac App Store (вынуждены предупредить, правда, что весит он достаточно много).

Предотвратить запуск скринсейвера и переход в спящий режим с помощью caffeinate

Появившаяся в OS X Mountain Lion команда caffeinate является консольным аналогом общеизвестной утилиты Caffeine. Принцип работы очень простой — с запущенной caffeinate ваш Mac не будет переходить в спящий режим или активировать скринсейвер. Её можно запустить и без дополнительных параметров, но можно и ограничить время её работы таймером, например:

caffeinate -t 3600

Извлечь файлы из PKG с помощью pkgutil

Есть нужда вытащить файл из пакетного файла .pkg? Или посмотреть содержимое PKG без установки? Воспользуйтесь pkgutil:

pkgutil --expand package.pkg ~/Desktop/

Освободить немного памяти с purge

Команда purge принудительно очищает дисковый кэш и кэш памяти, что дает эффект, схожий с перезагрузкой компьютера. Хотя некоторые говорят, что purge скорее имеет эффект плацебо, она вполне справляется с тем, чтобы вытащить системную память из категории «Неактивно» в категорию «Доступно», что добавит системе скорости в ситуациях, когда оперативная память оказывается на исходе. Воспользоваться этой командой очень просто :)

purge

…и подождите немного, пока изменения вступят в силу, обычно это происходит быстрее на «маках» с SSD.

Использовать open для запуска нескольких копий одного приложения

Возможно, вы уже знаете, что из Терминала можно запускать приложения с графическим интерфейсом, используя команду open, но знаете ли вы, что можно запустить нескольких копий приложения, просто добавив флаг -n? Данный пример запускает новую копию Safari.

open -n /Applications/Safari.app/

Обновить OS X без App Store

Хочется обновиться без запуска не всегда быстрого приложения Mac App Store? В вашем распоряжении командная строка и команда softwareupdate:

sudo softwareupdate -i -a

Посмотреть список всех файлов, когда-либо загруженных вами из Сети

Забыли, что и откуда у вас появилось в папке «Загрузки»? Системная служба Quarantine ведет в своей базе учет всех ваших загрузок, и надо просто обратиться к ней с сответствующим запросом. Команда sqlite3 со следующими параметрами выведет вам полный список:

sqlite3 ~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV* 'select LSQuarantineDataURLString from LSQuarantineEvent' |more

Если вас «напрягает» существование этих записей, их можно очистить следующей командой:

sqlite3 ~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV* 'delete from LSQuarantineEvent'

Спрятать файлы и папки из Finder при помощи chflags

Хотите припрятать от случайных глаз файл или папку? Используйте chflags, чтобы сделать их невидимыми в графическом интерфейсе OS X:

chflags hidden /path/to/file/or/folder/

К счастью (или несчастью), спрятанный объект будет по-прежнему виден командой ls. Чтобы вернуть «видимость» используйте флаг nohidden:

chflags nohidden /path/to/unhide/

Автоматическая подстановка длинных путей перетаскиванием

Если перетащить любой файл из Finder в Терминал, в командной строке выстветится его полный путь. Наилучший вариант использования этой функции — в сочетании с какой-нибудь командой, например, редактирования:

sudo vi (перетащите сюда файл, чтобы вставить путь к нему)

Создать запароленный архив Zip

При отправке ценных файлов, например, почтовым вложением, бывает полезно защитить их. Самый простой способ — поместить их в архивный файл, закрытый паролем, для чего необходимо воспользоваться флагом -e:

zip -e protected.zip /file/to/protect/

Created/Updated: 25.05.2018

stop war in Ukraine

ukrTrident

stand with Ukraine