Секреты Терминала. Часть 4: Операции над объектами
Мы возвращаемся к нашему циклу статей о Терминале Mac OS X, где излагаются премудрости работы на Маке через командную строку. Сегодня мы подходим к самому важному уроку — операции над файлами и папками. Мы рассмотрим команды для копирования, перемещения, переименования и удаления объектов — cp, mv, rm. Не удивляйтесь, что для четырёх названных действий предназначены три команды. Как вы узнаете из дальнейшего повествования, одна из них умеет гораздо больше, чем кажется сначала.
Итак, начнём с копирования и команды cp.
Стандартный синтаксис команды копирования такой:
Параметры команды, путь к копируемому файлу и адрес для размещения копии разделяются пробелами. А если пробел есть внутри какого-то из путей, то, как вы помните, надо либо поставить перед ним обратный слэш (\ пробел) или заключить весь путь в одинарные кавычки (‘путь с пробелами’).
Самое главное в этой команде — именно параметры. Например, без дополнительных параметров вы не сможете даже скопировать папку — по умолчанию команда cp работает только для отдельных файлов.
Этот параметр нужен, если вы копируете папку. Обратите внимание на очень важный нюанс: от того, как вы напишете путь к папке, зависит то, как она скопируется. Возьмёме простой пример: откройте Терминал и введите команду:
Вы получите ошибку о том, что Sites — это директория, и она не может быть скопирована.
Теперь попробуйте немного другой вариант:
Папка с сайтами скопируется на Рабочий стол. Попробуйте третий вариант:
Вы увидите, что на Рабочий стол скопировалась не сама папка сайтов, а только её содержимое.
Запомните это правило — слэш в конце пути копируемой папки не копирует её саму.
Это опасный параметр. Он означает, при совпадении имён копируемого файла с уже имеющимся в папке, куда он копируется, этот файл будет стёрт безо всяких предупреждений и уведомлений.
Это параметр для тех, кто склонен острожничать. При первом же совпадении имён вы увидите вот такой вопрос:
От того, что вы нажмёте на клавиатуре (y или n), будет зависеть судьба файла в папке назначения. Количество таких вопросов будет равно количеству объектов с совпадающими именами.
Данный параметр прикажет Терминалу при копировании сохранять атрибуты исходного файла: его владельца, права доступа, группу, время изменения и открытия. Всегда ставьте этот параметр, если вы копируете системные файлы. В противном случае их права будут безнадёжно испорчены, и вас могут ждать серьёзные ошибки в системе.
Возникает вопрос, а что будет, если задать заведомо противоречащие параметры, например:
Отвечаем: в этом случае имеет значение порядок параметров. Второй параметр окажется сильнее первого, и копирование затрёт совпадающие по именам файлы. А вот если написать:
Данная команда имеет двойное назначение — она умеет перемещать и переименовывать объекты. Очень многое здесь зависит от синтаксиса. Общий принцип работы у команды mv схож с cp:
Допустим, вы хотите переименовать файл File1.txt на рабочем столе в File2.txt. В Терминале вам понадобится команда:
Запомните: если в качестве второго адреса в команде mv задан путь к файлу, то произойдёт переименование. Разумеется, папка в первом и во втором пути должна быть одна и та же, тогда это уже не будет просто переименованием. Например, если вы введёте команду:
то с Рабочего стола файл File1.txt бесследно исчезнет. Зато в корне диска появится файл File2.txt с точно таким же содержимым.
И третья ситуация — просто перемещение (без переименования):
Файл будет перемещён с Рабочего стола в ваше папку «Загрузки». Иными словами, если в качестве второго адреса в команде mv задан путь к папке, то произойдёт перемещение.
Теперь о параметрах команды mv. Их всего четыре, и все они совпадают с параметрами команды cp:
Эта команда предназначена для удаления объектов. Из всех рассмотренных в нашем курсе команд она наиболее опасна. Файлы удаляются навсегда и в обход Корзины. Восстановить их весьма проблематично. Именно поэтому всегда дважды (а то и трижды) проверяйте введённые вместе с командой rm параметры и аргументы!
Синтаксис у неё ещё проще:
А вот её параметры:
Есть у rm и ещё один занятный параметр для конфиденциальной информации:
Заглавная P в числе параметров не просто удаляет файл, но и трижды перезаписывает место на диске, где он хранился, сводя вероятность восстановления данных к нулю.
Покажем ещё раз опасность команды rm. Допустим, вы хотели удалить папку Temp в корне диска:
и случайно опечатались, поставив пробел после слэша:
rmdir
На этом сегодняшний урок по Терминалу можно считать оконченным. Далее по курсу — создание папок и файлов.
Основы навигации
команда cd. Одна из основных команд, позволяющих осуществлять навигацию по различным директориям. Если, открыв терминал, вы сразу хотите оказаться в определенной директории, скажем, в Documents, достаточно набрать в терминале cd Documents.
команда, при помощи которой вы переходите в свою директорию. Для примера, если вы решаете перейти в каталог, где расположены ваши документы, то следующая команда будет выглядеть так: cd
ls выдает список имен файлов в указанной директории
mkdir создает новую директорию. Для примера: набрав команду : mkdir new, вы создадите новую директорию с названием new.
rmdir удалить директорию.
rm new.txt : команда удалит файл new.txt
Script done on Sat Feb 10 18:21:32 2007
файл будет сохранен с именем typescript в вашей домашней директории.
Копирование
Копирование файлов и папок, осуществляется при помощи команды cp. Допустим, вы хотите скопировать файл note.txt с рабочего стола в каталог Documents. В этом случае потребуется набрать в терминале cp note.txt
Необходимо учитывать, что если файл с таким же именем существует на новом месте, он будет удален и заменен скопированным файлом без предупреждений и возможности восстановления.
/Documents/new.txt. И в вашей папке появится файл new.txt, являющийся копией файла note.txt с рабочего стола.
Для того, чтобы скопировать нужный файл в исходный каталог, но уже с новым именем, достаточно будет набрать cp note.txt new.txt
ditto позволяет скопировать директорию, но с сохранением атрибутов скрытых файлов.
ditto Documents «Documents backup» копирует всю директорию под именем «Documents» и называет копию директории «Documents backup».
Поиск
Процессы
top выдает список основных задействованных процессов и постоянно обновляемую информацию о них. Нагрузка на процессор, размер задействованной памяти, время и пр.
Работа с текстом
Жесткий диск
diskutil выдает список всех возможных команд для операций с вашим жестким диском. От просто просмотра командой diskutil list до таких операций, как монтирование разделов, починка всем знакомых «пермишонов» или формата. Говоря проще, перед вами все опции (на самом деле их даже больше) уже знакомой вам Disk Utility с той разницей, что все действия вы выполняете через интерфейс командной строки. Вот пример лишь нескольких команд, предлагаемых вам diskutil
diskutil resizeVolume позволяет изменять размер выбранного раздела
diskutil partitionDisk позволяет совершать операции над диском и его отдельными разделами. Форматирование, выбор файловой системы и пр.
diskutil eraseDisk стирает информацию с вашего жесткого диска.
diskutil info / выводит информацию о загрузочном разделе вашего диска. Его имя, тип файловой системы, общий размер, количество общего и свободного пространства и пр.
diskutil info /Volumes/здесь имя раздела то же самое, но для любого другого, смонтированного, но незагрузочного раздела вашего жесткого диска.
sudo diskutil repairPermissions / еще одна команда для «починки пермишнов» на загрузочном диске с вашей MacOS X. При ее выполнении от вас потребуют ввести пароль администратора.
(Две последние команды выполняются исключительно из-под аккаунта администратора.)
Конечно, немногие пользователи используют возможности терминала в повседневной жизни. Кому-то это кажется древним и отжившим анахронизмом, кого-то отталкивает необходимость запоминать довольно большой список необходимых команд, в то время, когда большинство требуемых задач можно выполнить при помощи обычной мыши. Но, раз начав работать с терминалом, вы сами довольно быстро оцените возможности, которые он вам предоставляет.
Терминал на Mac (macOS): что это, команды, синтаксис – понятный гид для начинающих
Сегодня все мы в 99% случаев работаем с Mac через приятный, понятный и удобный графический интерфейс пользователя. Но при решении ряда специфических задач даже Finder не справится с тем, что сделает старая добрая командная строка…
Например, с её помощью гораздо проще – и быстрее! – искать затерявшийся где-то в недрах системы 5-гигабайтный файл или путь к приложению, которое, как вы думали, уже давно удалено.
Что такое «Терминал»?
Терминал – стандартная системная утилита для взаимодействия с Mac при помощи командной строки. В Linux есть похожий инструмент управления, т.к. обе ОС являются Unix-подобными.
Интерфейс командной строки (command line interface или сокращенно CLI) – он же язык общения с Терминалом – называется bash. Всё, о чем мы расскажем ниже – это bash-команды.
Общие команды для Mac
Основной синтаксис
Bash-команда обычно строится так:
[Команда] [Опции] [Ввод или путь к файлу или директории]
Если вы поймете путь, то поймете и то, как macOS в действительности видит ваши файлы. Как? Да как в матрешке – одна за другой. Например, вот путь к файлу под названием «Мои секреты», лежащему на Рабочем столе: /Users/Yablykworld/Desktop/My Secrets.
Пробелы
С пробелами действует простое правило – ничего лишнего!
Почему? Дело в том, что bash считает пробел концом команды!
Если у вас есть папка с пробелами в названии – например, Yablyk Folder, и вы пытаетесь вывести её содержимое с помощью команды ls /Applications/Yablyk Folder, то соответствующий файл не будет найден, и на выходе появится ошибка:
Чтобы решить эту проблему, понадобятся кавычки или обратный слэш. Вот теперь всё будет правильно:
Многим командам требуется доступ с уровня администратора. Если вы сейчас пользуетесь Mac не под аккаунтом его «админа», но знаете пароль, введите в командную строку перед текстом самой команды sudo – (что означает «single user do», «делает один пользователь»). Так вы временно получите привилегии администратора и возможность произвести необходимые операции без смены аккаунта.
Команды Терминала для улучшения продуктивности
Синтаксис find состоит из четырех частей:
2. путь к директории, в которой вы хотите искать информацию (например, /Applications);
3. опции (например, -name дает find возможность искать файлы, которые подходят к заданному названию);
4. непосредственно сам поисковый запрос (например, Google Chrome).
Вот как выглядит вся команда в целом:
Примечание: «звездочки» (*) указывают на то, что используется regex (регулярные выражения).
du – это сокращение от «disk usage». Команда поможет быстро узнать размер конкретного файла или папки, или даже списка файлов внутри папки.
Лучшие опции для du:
-d («глубина», или depth): если за этой буквой стоит цифра, то find ограничит поиск по директории соответствующим количеством уровней. Например, если вы отдадите вашему Mac команду du:
Терминал выдаст вам информацию только об общем «весе» папок и файлов в папке Applications, без данных о размере подпапок, вложенных в эти папки.
-h (human readable, или «человеко-читаемые»). Выводит размеры файлов в привычных людям величинах – K (килобайтах), М (мегабайтах) или G (гигабайтах).
Команда du в действии:
Синтаксис mv очень прост – старый путь меняется на новый:
mv /Users/Yablykworld/Documents/file1 /Users/Yablykworld/Desktop/file1
Эта команда переносит file1 из папки Документы на Рабочий стол.
ls – невероятно мощная. команда для отображения того, что находится в ваших папках. Также она выдает информацию о том, кто имеет право видеть их, есть ли на вашем Mac скрытые файлы или папки, и многое другое.
Лучшие опции для ls:
-l – отображает права для каждого файла в папке, время последнего изменения, владельца файла и его (файла) название.
-a – показывает все файлы в папке, включая скрытые (отличный вариант для библиотеки пользователя, которая в macOS по умолчанию скрыта).
Вот как всё работает:
mkdir
Создает новые папки в мгновение ока.
Эта команда раз и навсегда удаляет абсолютно любой файл, который вы поместите в команду. Что, разумеется, требует повышенного внимания – в отличие от Корзины, rm не будет спрашивать «а Вы точно уверены?». Предполагается, что вы знаете, что делаете…
По умолчанию rm удаляет только файлы, папки остаются. Для того, чтобы сразу удалять и их, используйте опцию -R (рекурсивно).
Как удалить файл в терминале на вашем Mac
Каждый хочет сэкономить время и силы при выполнении задач на своем Mac. Благодаря терминалу командной строки пользователи Mac могут легко выполнить утомительные задачи всего за несколько секунд, включая удаление файлов. Продолжайте читать, чтобы узнать, как удалить файл в терминале.
Инструкции в этой статье относятся к пользователям Mac, использующим macOS и OS X Lion и новее.
Что такое терминал?
Терминал это приложение, которое поставляется с каждым Mac. Это способ использовать командную строку на Mac и позволяет пользователям изменять настройки, файлы и т. Д. Помимо того, что доступно в графическом интерфейсе пользователя (GUI). Командная строка предлагает пользователям полное управление своим Mac, изнутри.
Почему вы должны использовать терминал? Вот только некоторые из ключевых преимуществ использования Terminal for Mac:
Важно понимать, что Терминал является опасным местом для тех, кто неопытен в командной строке. Прежде чем войти в Терминал, обязательно ознакомьтесь с основными командами. Одна неправильная команда может повредить вашу систему.
Как удалить файл в терминале на вашем Mac
Независимо от того, имеете ли вы дело с проблемным файлом, который отказывается покидать ваш Mac, или вы просто хотите быстро удалить несколько файлов, Terminal делает это быстро и легко.
Вы также можете нажать Ctrl + Space, чтобы открыть Spotlight. Затем введите Терминал.
В окне терминала введите rm и пробел. Затем вы можете просто перетащить файл, который вы хотите удалить, в окно терминала.
Нажмите Enter, и файл исчезнет навсегда.
10 полезных команд Терминала на Mac (macOS)
Терминал — отличнейший штатный инструмент для тонкой настройки системы, увеличения производительности и многого другого, который поначалу может даже напугать рядовых пользователей. И даже не смотря на то, что приложение завязано на программировании в чистом виде, это достаточно простой инструмент, который может значительно улучшить жизнь пользователя Mac. В этом материале мы собрали 10 полезных команд, обязательных для ознакомления каждому.
Все описанные ниже команды будут работать на OS X Mavericks и новее. Открыть Терминал можно через Finder → Программы → Утилиты или посредством поисковика Spotlight (Ctrl + Пробел).
Автоматическая проверка обновлений
По умолчанию macOS проверяет наличие системных обновлений и новых версий приложений еженедельно. Чтобы сделать автоматическую проверку ежедневной — достаточно ввести в Терминале следующую команду:
Изменение формата файла скриншота
Любой скриншот в macOS по умолчанию сохраняется в формате PNG. Благодаря Терминалу у пользователей появляется возможность изменить формат на BMP, GIF, JPG, PDF или TIFF. Для этого воспользуйтесь этой командой:
В кавычках укажите требуемое разрешение. Если после активации этой команды появляется сообщение «Невозможно сохранить снимок экрана», то это означает, что вы напечатали неправильные кавычки.
Восстановление формата по умолчанию (PNG):
defaults delete com.apple.screencapture type
Указываем место создания скриншотов
Все создаваемые скриншоты отображаются на рабочем столе, но, дабы не нарушать идиллию, можно указать и другое место, что не составит особого труда.
defaults write com.apple.screencapture location
после чего через пробел укажите путь и нажмите клавишу Return (Enter).
Закончите процедуру командой:
Например:
defaults write com.apple.screencapture location /Users/Имя пользователя/Downloads
Отображение скрытых файлов и папок
По умолчанию все скрытые файлы и папки в macOS невидимы для взора рядовых пользователей. Чтобы исправить эту несправедливость достаточно воспользоваться Терминалом:
Чтобы отключить отображение скрытых файлов и папок воспользуйтесь командой:
Выборочное отображение скрытых файлов и папок
Если вы не хотите видеть все скрытые файлы и папки в системе, а желаете лицезреть лишь скрытые файлы или папки в конкретном месте — введите команду:
chflags nohidden /Library/
далее укажите путь к требуемой папке.
Автоматическое открытие Finder при подключении накопителя
Если вы хотитите сразу же видеть содержимое подключённого к Mac накопителя, то воспользуйтесь следующими командами:
Для отключения введите те же команды но уже не со значением true, а с false.
Отключение предупреждения при очистке корзины
Чтобы избавиться от уточняющего сообщения при очистке корзины — воспользуйтесь командой:
Надёжное удаление
macOS при удалении файлов использует быструю очистку. Другими словами, удаляемые файлы помечаются меткой, означающей что это место свободно и на него можно записать новый файл. Удаленные таким способом файлы можно восстановить при помощи специальных утилит. Если же Вам необходимо навсегда удалить файл и затереть место его расположения —используйте следующие команды.
Чтобы удалить и однократно затереть файлы — введите в Терминале команду:
А затем переместите удаляемый файл в окно Терминала.
Чтобы безвозвратно удалить файл воспользуйтесь командой:
Чтобы произвести те же действия, но уже с папкой — используйте:
Озвучка слов
Если в Терминале набрать слово Say и нажать Enter, то программа автоматически начнёт озвучивать последующие введённые слова и предложения.
Увеличиваем скорость появления Dock-панели
Команда для возврата настроек по умолчанию: