Как открыть командную строку на мак. Как открыть и использовать терминал в Mac OS

26.02.2019

Как найти файлы и папки в терминале OSX?

Какие существуют команды для поиска в терминале OSX?

Не для кого не секрет, что терминал в Mac OS X выступает, как сильная среда, в которой вы получаете доступ к скриптовым инструментам, которые способны организовать ваши рабочие процессы в операционной системе Mac OS X; собрать информацию, сформировать отчеты - воспользоваться вашим “маком”, качественно новыми способами. Вообще, просто не передать словами, когда без использования мыши и графического окружения, вы способны проделывать достаточно сложный операции, исключительно из командной строки вашего устройства под управлением Mac OS X. Безусловно, работа в терминале Mac OS X требует определенных знаний, уровнем выше, чем просто - пользователь компьютера. Но изучая компьютерные технологии, я также определил для себя, что начало - это любой этап в той или иной области. Ты начинаешь изучать, читать, восполнять пробелы знаний, которых не достаточно. Так и с командной строкой в Mac OS X. В ней нет определенных операций, которые нужно начинать изучать поэтапно. Вы либо знаете о тех или иных особенностях и функциональных возможностях, либо нет. Итак, сегодня учимся искать файлы в терминале Mac OS X. Очередная статья про командную строку в Mac OS X.

С чего начинается поиск в OS X, когда мы работаем с графической средой? Все просто, мы вызываем Finder , и нажимаем сочетание клавиш Command + F (на раскладке macbook клавиша слева, рядом с пробелом). Нажав сочетание для вызова поиска, мы просто вбиваем текст в соответствующее поле, и получаем наиболее полную информацию по интересующим нас критериям.

А как это происходит в командной строке? На самом деле поиск в командной строке Mac OS X также прост. Вам потребуется знать всего три основные команды поиска: "Find" , "mdfind" , "locate" . После ввода этих команд и указания всех параметров поиска, ваша поисковая выдача наполнится результатами с демонстрацией полного пути к файлам наиболее четко соответствующим введенному запросу.

Команда Find

Базовая команда поиска не только в операционной системе Mac OS X, но и на всех других Unix системах. Я говорю о том, что этот вариант поиска работает в других операционных системах, отличных от Mac OS X. Чтобы команда выполнялась корректно ей необходимо создать ряд условий:

1. Вы определяете область по которой будет происходить поиск;

2. Затем указываете имена файлов которые вам необходимы.

Не так много условий, но как только они будут выполнены, перед вами появится окно результатов поиск в командной строке Mac OS X, где будут указан полный путь к найденным файлам.

Так в примере выше, я воспользовался командой "find" в терминале Mac OS X (командной строке), для поиска файла с именем "Finder". В принципе условия поиска были достаточно простыми, ведь я знал расположение файла, знал его имя, и все что мне было необходимо - это ввести данные. Первое, что я сделал, это написал саму команду, далее путь к файлу, обозначил условие поиска "-name", и после условия ввел его значение - файл Finder.txt.

Стоит понимать, что мой пример примитивный, а поиск может происходит по любым параметрам, которые только пожелаете, и как может себе позволить "find" (команда поиска) в операционной системе Mac OS X (-type (поиск по определенному типу), -size (поиск по размеру файла) и т.д.).

Узнать о том какие условия доступны из командной строки для операторов "find" в Mac OS X можно набрав "man find" . Появится полное описание команды. Как только закончите его читать нажмите Ctrl + Z.

Команда Locate

Найти что-либо в Unix системах быстрее чем в других ОС. Все дело в том, что поиск в Unix достаточно разнообразен. Ведь с одной стороны у вас есть команда "Find" . Ее функционал был продемонстрирован выше, но она эффективна в том случае, когда вы точно знаете место размещения, или у вас есть время для ожидания. Так как поиск "в слепую" при помощи команды "Find", может занять достаточно много времени. Так как объем сканируемого пространства в современных жестких дисках достигает внушающих размеров.

Поэтому, если вам необходимо найти системные файлы, необходимо воспользоваться специальной командой поиска "locate" . Правда для этого сначала необходимо включить специальную базу данных. Для начала вводим следующую строку в терминале OS X:

Sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist

Данная инструкция заставит активироваться в вашей системе демона, который проиндексирует вашу систему и позволит работать с командой "locate" в терминале операционной системы OS X. Как я уже говорил команда locate направлена для поиска по системным файлам. Именно для этого ее и необходимо использовать. Так как в поисковый индекс не попадут пользовательские файлы. Кстати, не пытайтесь воспользоваться поиском при помощи locate сразу. База должна быть создана. Но как только процесс будет завершен, можно воспользоваться следующей конструкцией - пишем locate имя файла.

Команда mdfind

Эта команда представляет собой поисковый алгоритм в системах OS X только без графического окружения. Да, mdfind - это Spotlight, только без красивых кнопок, и с более трудными для понимания настройками.

Именно в этом поиске происходит настройка поиска по определенным параметрам, с указанием метаданных. При этом команда не лишена простого и понятного функционала, как просто осуществить поиск.

Введя простую инструкцию mdfind OSX. Будут найдены все документы с содержанием как внутри так и в название "OSX". Но такой поиск слишком широк, нам не нужна поисковая выдача содержащая несколько сотен объектов, и поэтому в команде mdfind приветствуется использование флагов. Таких как флаг "-onlyin" который дает возможность воспользоваться командой mdfind , но только по определенной конструкции, когда поиск будет производится в том месте который мы теперь можем указать (теперь, после ввода флага "-onlyin").

Кстати, если использовать "-onlyin" в директории (указывать путь поиска и заканчивать на директории) то поиск будет осуществляется в конечной папке и уровнями ниже. При этом если указать в конце файл, поиск будет производится в конкретном файле.

Собственно не так сложно, но при этом лучше конечно же знать спецификацию, попробовать почитать, чтобы понимать какие есть возможности для работы с командой поиска mdfind в терминале Mac OS X.

Можно представить, какой шквал камней пронзит воздух в ответ на заявление, что стандартный вид командной строки просто скучен. Ну да ладно, скучен, так скучен. Всего несколько простых приемов настройки - и цветовую палитру «блочной утилиты «Терминал» (Terminal) можно значительно расширить. Что, кстати, может упростить считывание текстовой информации.

Bash-приглашение, команда ls и цвета символов

Для необходимого минимума давайте улучшим строку приглашения, разнообразим вывод команды ls и включим отображение цветов. Все это можно сделать, подредактировав содержимое файла .bash_profile или .bashrc , который расположен в домашнем каталоге. В этом примере рассмотрим работу с первым файлом:

export PS1="u@h:w$ " export CLICOLOR=1 export LSCOLORS=ExFxBxDxCxegedabagacad alias ls="ls -GFh"
  • Нажмите клавиши control +O , чтобы сохранить изменения, и control +X , чтобы выйти из нано-редактора.

Первая строка указывает, чтобы строка приглашения консольной bash-оболочки стала отображаться в цвете, а формат ее стал вида имя_пользователя@имя_машины:cwd $ . Следующие две строки включают для командной строки поддержку цвета и настраивают отображение вывода команды ls .

В последней строке мы ссылаемся на команду ls, включив в это обращение несколько флагов. Флаг -G включает цвет в выходном потоке команды, -h переводит числовые значения в понятные пользователю единицы измерения, а -F добавляет символ косой черты (/) после имени каталогов.

Если выполнить все вышеуказанные действия, то окно командной строки при еще включенном нано-редакторе будет выглядеть так:

После выполнения всех действий откройте новое окно «Терминала», запустите команду ls - и вы увидите разницу.

Жирный шрифт, ANSI-цвета и яркие оттенки

Все нижеизложенное будет привязано к конкретной цветовой схеме (или профилю). Это значит, что каждую цветовую схему нужно будет настраивать отдельно. Для большинства схем «Терминала» поддержка ANSI-цветов включена по умолчанию, но если для какой-то схемы этот параметр выключен - включите его.

  • Нажав клавиши command +, - или выбрав команду меню Терминал > Настройки (Terminal > Preferences) , - откройте окно настройки командной строки и перейдите на вкладку Настройки (Settings) .
  • Слева выберите какой-нибудь схему-профиль, и на вкладке Текст (Text) включите параметры Использовать жирные шрифты (Use Bold Fonts) и Использовать яркие цвета для жирного шрифта (Use bright colors for bold text) .

Теперь такие объекты, как исполняемые файлы и каталоги, будут отображаться жирным шрифтом и более ярким цветом - так их будет проще отличить от других объектов, которые также отображаются цветным текстом.

Фон: прозрачность, размывка и обои

После настройки «колоризации» командной строки можно перейти к параметрам фона окон «Терминала»:

  • В том же окне настройки утилиты выберите нужный пункт в списке профилей и перейдите на вкладку Окно (Window) .
  • Щелкните на кнопке Цвет и эффекты (Color & Effects) , чтобы выбрать цвет фона, степерь его прозрачности и размывки. Совет: приятный вариант, когда прозрачность установлена на 80, а размывка - на 100 %.
  • Щелкните на выпадающем списке Изображение (Image) , чтобы выбрать фоновое изображение. Желательно соблюдать принцип: темные картинки - для темных, светлые - для светлых профилей.

Mac OS является Unix- системой и являясь полноправным членом семейства Unix в ней есть командная строка (думаю не опытных пользователей Мак это удивит). Да в Mac OS так же как и в Linux, Windows есть командная строка, через которую можно выполнять абсолютно все команды. Изначально работа в Unix, Linux, Windows происходила так- пользователь вводил команду и спустя время получал результат. Затем появился графический интерфейс, с помощью которого можно было выполнять те же операции только значительно проще. На сегодняшний день практически все операции в Mac OS можно выполнять в графическом интерфейсе, но все же есть область администрирования, в которой без командной строки (в Mac OS она называется Терминал) ни как не обойтись, особенно она нужна при восстановлении работы операционной системой. Но поскольку сбои в Mac OS происходят крайне редко, многие пользователи и не догадываются, что у них есть Терминал.

Что бы начать знакомство с Терминалом или просто выполнить какие либо команды, необходимо его запустить. Запустить Терминал на Маке можно несколькими способами.

Открыть Терминал с помощью поиска Spotlight.

Запустите Spotlight, для этого нажмите на значок лупы в области для menulet или с помощью сочетания клавиш + <Пробел>.

В строке поиска Spotlight введите слово Терминал и нажмите "Enter"

В результате вы увидите окно Терминала.

Запустить Терминал в Finder.

Если первый способ запуска Терминала вас по каким то причинам не устроил, на мой взгляд, он удобней всего, есть еще один способ. Откройте "Finder" выберите "Программы" - "Утилиты".

Среди утилит найдите "Терминал" и запустите.

Когда при работе с Mac OS X надо сделать что-либо недоступное через графический интерфейс, бывает нужна старая добрая командная строка. Например, чтобы вставить разделительные пробелы в панель Dock или запустить системную утилиту, не имеющую графического интерфейса. Для работы с командной строкой в Mac OS X существует приложение Terminal.

Если вы работали в Unix-подобных системах, то у вас не будет проблем с командной строкой в Mac’е, если же вы никогда не работали с командной строкой, то эта статья поможет вам получить базовые знания, необходимые для начала работы.

Запускаем Terminal

Чтобы открыть Терминал, его, как и любое приложение, надо найти в Finder в папке Applications, он там располжен в подпапке Utilities (Программы → Служебные программы ). Это можно сделать быстро, нажав сочетание клавиш Shift+Command+U , также его можно закрепить в Dock, если вы планируете часто с ним работать. Я предпочитаю запускать его при помощи Spotlight .

При помощи горячих клавиш надо открыть строку поиска Spotlight и начать набирать слово terminal (обычно достаточно набрать только ter ) и, когда Spotlight найдёт Terminal, нажать ввод (return, он же enter) . Таким образом для запуска программы используется только клавиатура и получается быстрее, чем мышкой или трэкпадом.


Запуск Terminal из строки поиска Spotlight

Для того чтобы открыть Spotlight у меня назначена комбинация клавиш Option+Пробел , узнать какая комбинация назначена у вас или поменять комбинацию можно в System Preferences → Spotlight (Системные настройки → Spotlight) .


Настройка клавиш вызова поисковой строки Spotlight

Но вернёмся к Терминалу и командной строке.

Строка приглашения ввода

После запуска вы увидите такое окно. Точнее оно будет белым с чёрными буквами, но вы можете легко изменить оформление Terminal .

В первой строке отображается время последнего логина, имеется в виду время последнего запуска (открытия сессии) Терминала. Эта строка выводится один раз после открытия сессии командной строки.

Следующая строка называется строкой приглашения ввода от (англ. command prompt или просто prompt). Она говорит о том, что командная строка готова к вводу команд. В ней содержится следующая информация:

  • Имя компьютера. В моём случае это ixrevos‑macbook .
  • После двоеточия указана текущая директория. В данном случае это домашняя директория текущего пользователя /Users/ixrevo — в Unix-подобных системах домашняя директория отображается как символ тильда: ~ .
  • Потом отображается имя текущего пользователя, в моём случае это ixrevo .
  • И в конце строки — знак доллара $ .

Остановлюсь чуть подробнее на последнем символе строки ожидания ввода пользователя — он бывает трёх видов:

  • Первичный ввод текущего пользователя, обозначается знаком доллара $ . Означает, что командная строка запущена от имени текущего пользователя и ожидает ввод команды.
  • Первичный ввод суперпользователя, обозначается знаком решётки # . Означает, что командная строка запущена от имени суперпользователя (пользователь root с правами администратора) и ожидает ввод команды.
  • Вторичный ввод, обозначается знаком угловой скобки «больше чем» > . Означает, что была введена команда, для выполнения которой необходимо указать какие-либо параметры, и сейчас ожидается ввод этих параметров.

Ваша первая команда — листинг файлов — ls

Наберите в командной строке ls , что является сокращением от list , и нажмите ввод. Вы увидите список, в котором представлено содержимое текущей директории.

Не так и сложно, не правда ли? И по своей сути такой вывод не сильно отличается, если открыть содержимое этой же директории в Finder, используя привычный графический интерфейс.

Параметры и аргументы команды

Некоторым командам можно передать какие-либо данные в виде аргумента, например, можно передать команде ls название директории в качестве аргумента. Тогда команда ls выведет содержимое директории, которую вы передали ей как аргумент.

Если путь содержит пробелы, то их необходимо экранировать при помощи обратного слеша \ перед пробелом или заключать весь путь в кавычки, иначе командный интерпретатор не сможет понять, где кончается аргумент, и воспримет пробел как конец ввода.

У многих команд есть возможность указать параметр (опцию) или параметры, которые меняют поведение команды. Например, для команды ls можно указать аргумент ‑l , что является сокращением от long и значит полный вывод информации, и аргумент ‑a , что является сокращением от all и значит вывести всё содержимое, в том числе и скрытое. В таком случае команда с двумя аргументами будет выглядеть следующим образом: ls ‑la и выведет содержимое директории вместе с дополнительной информацией о каждой директории и файле.

Как видно из скриншота, теперь отображаются скрытые системные файлы, которые начинаются с точки, а дополнительная информация выводится в виде таблицы, где каждый вид информации сгруппирован по столбцам, а каждая строка относится к конкретному файлу или директории.

Информацию в каждой колонке этой таблицы:

  1. Информация о правах доступа к файлу или директории.
  2. Цифра отображает количество жёстких ссылок на этот файл или директорию. Подробнее про ссылки можно прочитать в статье про файлы, директории, жёсткие и символьные ссылки в Mac OS X .
  3. Владелец текущего файла или директории.
  4. Имя группы пользователей, у которой назначены права доступа к этому файлу или директории.
  5. Размер файла в байтах. Если команде ls указать параметр -h , то размер будет отображаться в наиболее подходящих единицах (Byte, Kilobyte, Megabyte, Gigabyte, Terabyte и Petabyte) с целью уменьшить количество выводимых цифр и будет указана эта единица измерения.
  6. Дата последнего изменения или, если файл был только создан и не менялся после этого, дата создания файла.
  7. Имя файла или директории.

Также вы можете комбинировать аргумент и параметры при вызове команды, например, как на скриншоте ниже, где вызывается команда ls c аргументом /Users/ixrevo/.dropbox/ и параметрами ls ‑lah:


Указана опция ‑h и размер файлов отображается в Байтах, Килобайтах и Мегабайтах
  1. Используйте автодополнение ввода. Например, можно набрать только первые буквы команды и нажать клавишу Tab - и недостающие буквы команды будут автоматически добавлены. Если же существует несколько команд, начинающихся с тех же символов, которые вы ввели, то двойное нажатие Tab выведет все эти команды в качестве подсказки.
  2. Также используйте автодополнение для имён и путей к файлам и директориям. Работает аналогично автодополнению команд.
  3. Если в командной строке нажать клавишу вверх , то будет выведена последняя введённая вами команда. Нажимая дальше клавишу вверх вы будете перебирать историю выполненных вами команд. Полная история хранится в файле ~/.bash_history .
  4. Если ввести два восклицательных знака!! и нажать ввод , то вы выполните последнюю введённую команду. Также есть шорткат и для использования аргумента от предыдущей команды, для этого надо ввести имя_команды!$ и нажать ввод — вместо!$ будет подставлен аргумент от предыдущей команды.
  5. Если вы что-то напутали при вводе команд, то попробуйте нажать Control+C , это сочетание прекращает выполнение текущей команды и закрывает её. Также можно попробовать нажать q и Esc .
  6. Можно прочитать руководство к любой команде и узнать что она делает, какие у неё есть параметры и аргументы. Для этого надо набрать man имя_команды.

Для начала, думаю, хватит. Как видите, ничего сложного в использовании командной строки нет, а если вы хотите продолжить знакомство с ней, то можете почитать о

И многого другого, который поначалу может даже напугать рядовых пользователей. И даже не смотря на то, что приложение завязано на программировании в чистом виде, это достаточно простой инструмент, который может значительно улучшить жизнь пользователя Mac. В этом материале мы собрали 10 полезных команд, обязательных для ознакомления каждому.

Вконтакте

Все описанные ниже команды будут работать на OS X Mavericks и новее. Открыть Терминал можно через Finder → Программы → Утилиты или посредством поисковика (Ctrl + Пробел).

Автоматическая проверка обновлений

По умолчанию macOS проверяет наличие системных обновлений и новых версий приложений еженедельно. Чтобы сделать автоматическую проверку ежедневной - достаточно ввести в Терминале следующую команду:

defaults write com.apple.SoftwareUpdate ScheduleFrequency -int 1

Изменение формата файла скриншота

Любой скриншот в macOS по умолчанию сохраняется в формате PNG. Благодаря Терминалу у пользователей появляется возможность изменить формат на BMP, GIF, JPG, PDF или TIFF. Для этого воспользуйтесь этой командой:

defaults write com.apple.screencapture type -string «jpg»

В кавычках укажите требуемое разрешение. Если после активации этой команды появляется сообщение «Невозможно сохранить снимок экрана », то это означает, что вы напечатали неправильные кавычки.

Восстановление формата по умолчанию (PNG):

defaults delete com.apple.screencapture type

Указываем место создания скриншотов

Все создаваемые скриншоты отображаются на рабочем столе, но, дабы не нарушать идиллию, можно указать и другое место, что не составит особого труда.

Введите команду:

defaults write com.apple.screencapture location

после чего через пробел укажите путь и нажмите клавишу Return (Enter).

Закончите процедуру командой:

killall SystemUIServer


Например:

defaults write com.apple.screencapture location /Users/Имя пользователя/Downloads

Отображение скрытых файлов и папок

По умолчанию все скрытые файлы и папки в macOS невидимы для взора рядовых пользователей. Чтобы исправить эту несправедливость достаточно воспользоваться Терминалом:

defaults write com.apple.finder AppleShowAllFiles -bool true


Чтобы отключить отображение скрытых файлов и папок воспользуйтесь командой:

defaults write com.apple.finder AppleShowAllFiles -bool false

Выборочное отображение скрытых файлов и папок

Если вы не хотите видеть все скрытые файлы и папки в системе, а желаете лицезреть лишь скрытые файлы или папки в конкретном месте - введите команду:

chflags nohidden /Library/

Автоматическое открытие Finder при подключении накопителя

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

defaults write com.apple.frameworks.diskimages auto-open-ro-root -bool true

defaults write com.apple.frameworks.diskimages auto-open-rw-root -bool true

defaults write com.apple.finder OpenWindowForNewRemovableDisk -bool true

Для отключения введите те же команды но уже не со значением true , а с false .

Отключение предупреждения при очистке корзины

Чтобы избавиться от уточняющего сообщения при очистке корзины - воспользуйтесь командой:

defaults write com.apple.finder WarnOnEmptyTrash -bool false

Надёжное удаление

macOS при удалении файлов использует быструю очистку. Другими словами, удаляемые файлы помечаются меткой, означающей что это место свободно и на него можно записать новый файл. Удаленные таким способом файлы можно восстановить при помощи специальных утилит. Если же Вам необходимо навсегда удалить файл и затереть место его расположения -используйте следующие команды.

Чтобы удалить и однократно затереть файлы - введите в Терминале команду:

srm -s /

А затем переместите удаляемый файл в окно Терминала.

Получится такого рода строка srm -s //Users/arvizami/.Trash/Новая папка/Снимок экрана 2015-06-24 в 10.46.49 .png

Чтобы безвозвратно удалить файл воспользуйтесь командой:

srm -m /

Чтобы произвести те же действия, но уже с папкой - используйте.