Несмотря на повсеместное распространение графических интерфейсов и всяких удобных манипуляторов вроде Magic Mouse и Magic Trackpad, приложение Терминал.app до сих пор является достаточно полезным и слегка «гиковым» инструментом для выполнения некоторых операций, с которым большинство из нас знакомы достаточно поверхностно. На самом деле, в его «укрощении» нет ничего сложного, поэтому для всех читателей МакРадара я подготовил команды для Терминала, которые могут оказаться полезными.
Для начала стоит сказать, что само приложение Терминал.app, как и все полезные служебные утилиты, располагается в каталоге Программы > Служебные программы. Сразу после его запуска вы увидите строку, в которой написано имя компьютера и текущего каталога, а после знака доллара ($) — приветливо мигающий курсор, который приглашает вас ввести свою первую команду…
Список файлов и папок — ls
По умолчанию, после запуска утилиты в качестве рабочего каталога выбирается домашняя папка пользователя. Для того, чтобы получить список файлов и папок в нем, достаточно запустить команду из двух букв ls
.
Существует несколько вариаций данной команды, которые вызываются разными ключами (на самом деле их намного больше):
ls -l
отобразит подробные данные о каждом элементе, включая права доступа, размер файлов и т.д. Кроме того, первый символ каждой строки позволит определить тип данных: если это латинская буква «d», то перед нами каталог, а если дефис (-), то обычный файл.ls -a
отобразит список всех файлов и каталогов в текущей папке, включая скрытые элементы (имена которых в Mac OS X начинаются с точки).
Хозяйке на заметку: ключи можно запросто комбинировать между собой, поэтому если вы хотите просмотреть подробные данные обо всех элементах каталога, включая скрытые файлы, то ваша команда должна выглядеть так: ls -la
Перемещение между каталогами — cd
Наименование этой команды происходит вовсе не от старых компакт-дисков, которые Apple успешно убила своим цифровым iTunes Store, а от двух английских слов «change directory» — именно этим она и занимается:
- Напишите
cd Music
— и Терминал перейдет в папку Music, если, конечно, она существует в вашем текущем каталоге. - Для выхода в папку на уровень выше используется команда
cd ..
(с двумя точками). - А выполнив команду cd вы моментально перенесетесь в домашний каталог пользователя.
Полный путь к рабочему каталогу — pwd
Название этой команды тоже происходит от первых букв фразы «print working directory». В каком бы каталоге вы не находились, результатом выполнения данной команды станет полный путь к текущему каталогу.
Создание каталога — mkdir
Данная команда создает директорию с указанным именем. К примеру, mkdir Temp
создаст в текущей папке каталог Temp. Если вы забыли, в каком каталоге вы сейчас находитесь, воспользуйтесь pwd
:
Удаление файлов и каталогов — rm, rmdir
Во время этого действия над файлами и каталогами через Терминал требуется учитывать небольшой, но важный нюанс: здесь нет Корзины, поэтому данные удаляются окончательно.
Но вообще команда rm test1.txt
удалит файл test1.txt из текущего каталога. А если добавить, скажем, ключ «i» (rm -i test2.txt
) пользователю потребуется подтвердить удаление.
К сожалению, удаление каталогов является более сложной задачей, потому что для этого действия существует сразу несколько видов команд:
rmdir Test
удалит каталог Test только в том случае, если он пустой и не содержит внутри себя подпапок или файлов.rm -r Test2
рекурсивно удаляет все находящиеся файлы и папки внутри Test2, а его удаляет в самом конце.
Перемещение и копирование фалов — mv и cp
Две команды выполняют практически аналогичные действия, поэтому и список параметров у них одинаков. Если я хочу переместить файл из одного каталога в другой, то мне потребуется воспользоваться такой командой:
mv ~/test1.txt ~/Documents/test1.txt
Первым параметром (~/test1.txt) выступает файл, который нам нужно переместить, а вторым — каталог назначения и результирующее имя файла.
И вновь хозяйке на заметку. Во-первых, как вы, возможно, уже догадались, не обязательно переходить в нужный каталог, чтобы совершать действия над файлами. Достаточно знать его имя, полный путь и использовать их в качестве параметров команды.
Во-вторых, чтобы каждый раз не писать путь к домашнему каталогу, достаточно воспользоваться тильдой (~). Например, запись
~/Documents
равносильна/Users/имя пользователя/Documents
.
Для копирования файлов достаточно заменить mv
на cp
:
Остальные команды
Естественно, описать все доступные команды (как и их ключи) не представляется возможным, поэтому я остановлюсь еще на нескольких интересных и полезных «экземплярах»:
- Запустить любое приложение в системе можно с помощью команды
open
, указав через пробел путь к приложению и его название. Например,open /Applications/Airfoil.app
- С помощью команды
who
можно посмотреть список пользователей, которые залогинились в систему. Естественно, это актуально лишь в том случае, если работа на данном компьютере подразумевает вход нескольких пользователей или активный SSH. - Команда
cat test.txt
позволит вам вывести в окно Терминала содержимое файла с именем test.txt, но вы не сможете его отредактировать (для этого потребуется воспользоваться текстовым редактором вроде nano, vim или emacs), только просмотреть. - Отменить процесс выполнения любой команды (будь то ping или работа шелл-скрипта) всегда можно с помощью универсальной комбинации клавиш
Control+C
. - Очистить окно Терминала от большого количества текста достаточно просто, выполнив команду
clear
. - Для выполнения некоторых команд вам могут потребоваться привилегии администратора. Быстрее всего это сделать путем добавления в начало строки команды
sudo
. В этом случае, Терминал попросит ввести пароль от вашей учетной записи. - Посмотреть список запущенных процессов можно с помощью команды
top
, правда, в этом случае данные будут выглядеть менее наглядно, нежели в Мониторинге системы. - Для вывода детальной справки по какой-либо команде можно воспользоваться
man
, указав через пробел имя интересующей команды. - Чуть не забыл упомянуть о просто фантастической поисковой утилите
grep
, с помощью которой можно найти текстовую строку в файле или, скажем, конкретный процесс в списке процессов (например,ps ax|grep smbd
).
Пожалуй, на этом и остановимся, а если я что-то упустил или указал неправильно — милости просим в комментарии.
Лучшие предложения
10 беспроводных ночников с AliExpress с классным дизайном
12 зимних курток, которые отдают со скидкой
Надо брать: мужские ботинки ECCO со скидкой 45%
Находки AliExpress: самые интересные и полезные товары
10 полезных товаров дешевле 500 рублей
12 пар утеплённых кроссовок, в которых будет комфортно зимой
Надо брать: набор инструментов Deli всего за 1 552 рубля
Цена дня: термос Feijian за 1 656 рублей
Как выбрасывать мусор правильно. 6 советов для тех, кто никак не может начать сортировать отходы
Рак: почему возникает и как лечится. Гид, который будет полезен всем
Как усыновить ребёнка: пошаговый план
С широко раскрытыми глазами: главные причины не бояться лазерной коррекции зрения