Командная строка

Работа с папками и файлами в командной строке macOS

В статье рассмотрены синтаксис и примеры основных команд для работы с папками и файлами в командой строке macOS. Вы узнайте как создать, скопировать, переместить, удалить папки и файлы, как посмотреть дерево папок и т.п.

Большинство задач при работе с папками и файлами в macOS можно решить с помощью Finder. Командная строка может пригодится, когда необходимо устранить какую-нибудь проблему или включить скрытые настройки macOS, скопировать нужные данные при удаленном подключение к Mac через ssh или написать скрипт для автоматизации рутинных задач.

Для работы в командной строке macOS откройте Terminal, для этого через Finder перейдите в:

/Программы/Утилиты/Terminal

Как узнать полный путь к текущей папке

После открытия Terminal по умолчанию пользователь находится в своей домашней папке. Полный путь к текущей папке можно узнать с помощью команды pwd.

pwd – «present working directory», можно перевести как «текущая рабочая папка».

Полный путь к домашней папке пользователя

Как в терминале macOS перейти в папку

Переход между папками осуществляется с помощью команды cd.

cd – «change directory», можно перевести как «сменить папку» или «перейти в другую папку».

Синтаксис команды:

cd [путь к папке]

Перейдите в папку Desktop [Рабочие стол], для этого наберите команду:

cd Desktop
Переход в папку Desktop

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

cd –

«-» – данная опция используется для перехода в последнюю просмотренную папку. Обратите внимание, что после выполнения команды cd – в Terminal будет выведет символ «~».

«~» – в командой строке macOS является синонимом полного пути к домашней папке текущего пользователя, чтобы убедится в этом наберите команду pwd.

Переход в последнюю просмотренную папку

Как перейти в домашнюю папку пользователя

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

cd ~

Для перехода в домашнюю папку другого пользователя используйте полный путь:

cd /Users/username

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

Как перейти в папку на уровень выше

«..» – опция две точки используется для перехода в папку на уровень выше, наберите в Terminal:

cd ..
Переход в папку на уровень выше

Если нужно перейти в папку на несколько уровней выше добавляйте «/» между «..», например так можно перейти в папку на два уровня выше:

cd ../../
Переход в папку на два уровня выше

Для перехода в корневую папку macOS используйте команду:

cd /
Переход в корневую папку

Обратите внимание, если в имени папки или файла содержится пробел, например «Новая папка», имя необходимо поместить в одинарные или двойные кавычки:

cd ‘Новая папка’
Переход в папку с пробелом в имени с помощью кавычек

Или поставить обратный слэш «\» перед пробелом:

cd Новая\ папка
Переход в папку с пробелом в имени с помощью обратного слэш

Это связано с тем, что командная строка воспринимает пробел как конец команды.

Как посмотреть содержимое папки

Просмотр содержимого папки осуществляется с помощью команды ls.

ls – «list files in the directory», можно перевести как «вывести список файлов в папке».

Синтаксис команды:

ls [-опции]

Давайте посмотрим содержимое текущей папки, для этого наберите команду:

ls
Вывод содержимого домашней папки пользователя

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

-A – отображение всех файлов за исключением “.” и “..”.

-a – отображение в том числе скрытых файлов, которые начинаются с точки “.”.

-f – отображение списка файлов без сортировки.

-l – отображение детального списка, который включает: размер файла, создатель, дата/время создания и т.д.

-h – отображение размера файлов в KB/MB/GB, а не только в байтах.

-r – сортировка файлов в обратном порядке.

-S – сортировка файлов по размеру.

-t – сортировка файлов по дате последнего изменения.

-u – сортировка файлов по дате последнего открытия.

Например можно вывести подробный список (-l) содержимого текущей папки, отсортированный по размеру (-S) в обратном порядке (-r), размер файлов отображается в KB/MB/GB (-h):

ls -lShr
Вывод содержимого папки в виде подробного списка

Как посмотреть содержимое файла

Посмотреть содержимое файла можно с помощью команды cat.

cat – «concatenate», можно перевести как «конкатенировать», в контексте просмотра содержимого файла имеется в виду связывание строк для вывода на экран.

Синтаксис команды:

cat [имя файла]

Для просмотра содержимого текстового файла macmaniac.txt введите:

cat file.txt
Просмотр содержимого текстового файла

Как в командной строке показать папки и файлы отмеченные тегом в Finder

Для вывода списка папок и файлов, которые были отмечены тегом в Finder, можно воспользоваться командой mdfind.

mdfind – «metadata find», можно перевести как «поиск метаданных».

Синтаксис команды:

mdfind ‘kMDItemUserTags=’ [-опции]

Например в домашней папке пользователя macmaniac есть следующие папки и файлы, которые отмечены тегом «Красный»

Папки и файлы в Finder с тегом «Красный»

Для того, чтобы вывести их список, находясь непосредственно внутри домашней папки, наберите:

mdfind ‘kMDItemUserTags=Красный’
Cписок папок и файлов с тегом «Красный»

Либо используйте опцию -onlyin, если необходимо указать полный путь к папке:

mdfind ‘kMDItemUserTags=Красный’ -onlyin /Users/macmaniac

Как в командной строке посмотреть информацию о папке или файле

Обычно в macOS посмотреть информацию о папке или файле можно через Finder в меню Свойства

Информация о папке или файле в Finde

В командной строке аналогичную информацию можно посмотреть с помощью команды mdls.

mdls – «metadata list», можно перевести как «список метаданных».

mdls file.txt
«Список метаданных» файла file.txt

Как в Terminal посмотреть содержимое внешнего диска

Для того, чтобы посмотреть содержимое внешнего жесткого диска или USB-флешки необходимо с помощью команды cd перейти в папку /Volumes

cd /Volumes

Затем с помощью команды ls вывести список подключенных дисков (что бы найти нужный) и с помощью команды ls вывести его содержимое. Например так можно посмотреть содержимое USB-флешки с именем «Macmaniac»:

ls Macmaniac
Просмотр содержимого флешки

Как посмотреть дерево папок в командной строке macOS

К сожалению в командной строке macOS нету встроенной команды для просмотра дерева папок. Чтобы вывести дерево папок необходимо из Homebrew установить утилиту tree.

Homebrew– менеджер приложений для macOS, с помощью которого можно устанавливать сторонние приложения для командной строки (и не только).

Для установки Homebrew вставьте в Terminal следующую команду и введите пароль администратора, если потребуется:

/bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)”

Не закрывайте Terminal пока скрипт установки не закончит свою работу.

Установка homebrew

После завершения установки в Terminal должно появится сообщение Installation successful! и заголовок Next steps со списком команд, которые нужно поочередно вставить в Terminal и нажать ↩ return:

echo ‘# Set PATH, MANPATH, etc., for Homebrew.’ >> /Users/macmaniac/.zprofileecho ‘eval “$(/opt/homebrew/bin/brew shellenv)”‘ >> /Users/macmaniac/.zprofileeval “$(/opt/homebrew/bin/brew shellenv)”

Теперь можно установить tree, для этого введите следующую команду:

brew install tree
Установка tree

Синтаксис команды tree:

tree [путь к папке]
Просмотр дерева папок

Как создать папку в терминале macOS

Создание новой папки осуществляется с помощью команды mkdir.

mkdir – «make directory», можно перевести как «создать папку».

Синтаксис команды:

mkdir [-опции] [имя новой папки]

Для создания папки с именем folder в текущей директории введите:

mkdir folder
Создание папки в текущей директории

Чтобы создать новую папку с именем folder по указанному пути ~/Documents введите:

mkdir ~/Documents/folder
Создание папки по указанному пути

Для mkdir также доступны следующие опции:

-m – определение прав доступа к создаваемой папке.

-p – создание вложенных папок за один раз.

-v – вывод имени каждой созданной папки на экран.

Для создания трех папок вложенных друг в друга одной командой используйте опцию -p:

mkdir -p folder1/folder2/folder3
Создания трех папок вложенных друг в друга одной командой

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

mkdir folder1 folder2 folder3
Создание нескольких папок одной командой

Как создать новый файл

Создание нового файла осуществляется с помощью команды touch.

touch – можно перевести как «прикоснуться», «потрогать».

Синтаксис команды:

touch [имя нового файла]

touch позволяет создать любой файл: изображение (.jpg), текстовый файл (.txt) и т.п. Созданные файлы будут пустыми.

Для создания текстового файла введите:

touch file.txt
Создание текстового файла

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

touch file1.txt file2.txt
Создание нескольких текстовых файлов одной командой

Как скопировать папку или файл через терминал macOS

Копирование папок и файлов осуществляется с помощью команды cp.

cp – «copy», можно перевести как «копировать».

Синтаксис команды:

cp [-опции] [имя файла/папки-источника] [путь назначения]

Для копирование файла с именем file.txt в директории Documents [Документы] введите:

cp file.txt ~/Documents
Копирование файла

Для cp также доступны следующие опции:

-R – копирование папки и всего ее содержимого.

-f – при совпадении имён копируемого файла с уже имеющимся в папке, этот файл будет стёрт без предупреждений и уведомлений.

-i – подтверждение в случае совпадения имен (перезаписывать текущий файл или папку).

-n – при копировании файлы не будут перезаписываться.

-p – сохраняет атрибуты копируемых файлов/папки (автора, время изменения, время последнего открытия и т.д.).

Чтобы скопировать все файлы с расширением *.jpg в папку Desktop [Рабочие стол] введите:

cp *.jpg ~/Desktop
Копирование всех файлов с расширением *.jpg

Для копирования папки folder со всеми подпапками и файлами в папку Desktop [Рабочие стол] используйте опцию -R:

cp -R folder ~/Desktop

Как переместить папку или файл

Перемещение папок и файлов осуществляется с помощью команды mv.

mv – «move», можно перевести как «переместить», «передвинуть».

Синтаксис команды:

mv [-опции] [имя файла/папки-источника] [путь назначения]

Для перемещения файла с именем file.txt в папку Desktop [Рабочий стол] введите:

mv file.txt ~/Desktop
Перемещение файла

Для mv также доступны следующие опции:

-n – не перезаписывать существующие файлы/папки.

-i – подтверждение каждого действия, которое может перезаписать файлы или папки.

-f – форсировать перезапись объектов с одинаковыми именами.

-v – вывод имен файлов по мере их перемещения.

Чтобы переместить все файлы с расширением *.jpg в папку Desktop [Рабочий стол] введите:

mv *.jpg ~/Desktop
Перемещение всех файлов с расширением *.jpg

Для перемещения папки с именем folder в папку Desktop [Рабочий стол] введите:

mv folder ~/Desktop
Перемещение папки

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

mv file1.txt file2.txt file3.txt ~/Desktop
Перемещение нескольких файлов одной командой

Чтобы переместить все файлы из папки Documents [Документы] в папку Desktop [Рабочие стол] введите:

mv ~/Documents/* ~/Desktop
Перемещение всех файлов из папки

Еще при перемещении папки или файла можно поменять его имя. Для перемещения и переименования файла file1.txt в file2.txt введите:

mv file1.txt file2.txt
Переименование файла

Как удалить папку или файл через терминал Mac

Удаление папок и файлов осуществляется с помощью команды rm.

rm – «remove», можно перевести как «удалить».

Синтаксис команды:

rm [-опции] [имя файла/папки]

Для удаления файла file2.txt, который находится в папке Documents [Документы] введите:

rm ~/Documents/file2.txt
Удаление файла

Для rm также доступны следующие опции:

-d – удаление пустых папки.

-R – удаление папок и их содержимого.

-f – принудительное удаление файла без запроса подтверждения или сообщения об ошибках.

-i – подтверждение каждой попытки удалить файл.

Чтобы удалить все файлы с расширением *.jpg введите:

rm *.jpg
Удаление всех файлов с расширением *.jpg

Для удаления папки folder и всего, что в ней находится введите:

rm -R folder

Популярное

Командная строка

Работа с папками и файлами в командной строке macOS

В статье рассмотрены синтаксис и примеры основных команд для работы с папками и файлами в командой строке macOS. Вы узнайте как создать, скопировать, переместить, удалить папки и файлы, как посмотреть дерево папок и т.п.

Новые статьи

Командная строка

Работа с папками и файлами в командной строке macOS

В статье рассмотрены синтаксис и примеры основных команд для работы с папками и файлами в командой строке macOS. Вы узнайте как создать, скопировать, переместить, удалить папки и файлы, как посмотреть дерево папок и т.п.