Як користуватися терміналом на Mac: посібник для початківців

Швидкі посилання

Ключові моменти

  • Інструмент “Термінал” на Mac дає змогу використовувати потужні текстові команди для різноманітних завдань, наприклад, пошуку файлів і налаштування параметрів системи.
  • Розуміння структури команд терміналу та ієрархії шляхів до файлів допоможе вам ефективніше керувати вашим Mac та взаємодіяти з ним.
  • До корисних команд терміналу відносяться “find” для пошуку файлів, “du” для аналізу використання диска, “mv” для переміщення файлів, “ls” для перегляду вмісту папок, “mkdir” для створення каталогів та “rm” для видалення файлів.

Хоча графічний інтерфейс користувача Mac є інтуїтивно зрозумілим і задовольняє більшість щоденних потреб, “Термінал” дозволяє глибше зануритися в систему та використовувати розширені текстові команди для виконання різноманітних операцій.

Інколи швидше знайти прихований файл великого розміру або переглянути шлях до кожного файлу, пов’язаного з програмою, яку ви, можливо, вже видалили. Для таких та інших завдань термінал Mac стане вашим надійним помічником.

Що таке термінал?

Термінал – це програма, за допомогою якої ви взаємодієте з Mac через командний рядок. Операційні системи Linux також мають подібні інструменти, оскільки Linux і macOS мають схожу Unix-подібну архітектуру. Хоча термінал macOS раніше використовував команди Bash, починаючи з macOS Catalina, він базується на zsh (Z shell). Однак основні команди, розглянуті в цьому матеріалі, повинні працювати в обох оболонках.

Існує кілька способів відкрити термінал на вашому Mac. Після початку використання, ви також можете персоналізувати підказку zsh терміналу Mac відповідно до своїх вподобань.

За допомогою терміналу можна виконувати багато інших дій. Наприклад, встановивши менеджер пакетів Homebrew, ви зможете використовувати його для встановлення нових мов програмування, репозиторіїв програмного забезпечення тощо.

Основні поради щодо командного рядка Mac

Спершу розглянемо деякі фундаментальні поняття про термінал, які вам необхідно знати.

Загальна структура команд

Команда zsh (або Bash) зазвичай має таку структуру:

 [Команда] [Параметри] [Вхідні дані або Шлях до файлу чи Каталогу] 

Наприклад, у команді:

 ls -la Downloads 

…яка призначена для перегляду вмісту папки “Завантаження”:

  • ls – це команда
  • -la поєднує два параметри: -l (формат розширеного списку) та -a (показати усі файли та каталоги)
  • Downloads – це шлях до каталогу (папки)

Шлях

Розуміння шляхів допоможе вам усвідомити, як macOS насправді бачить ваші файли. По суті, шлях до файлу – це послідовність вкладених папок, які містять файл, за якою йде ім’я самого файлу.

Наприклад, на Mac повний шлях до файлу під назвою “Мої Секрети”, що знаходиться на робочому столі користувача Івана Петренка, буде таким:

 /Users/ivan.petrenko/Desktop/"Мої Секрети" 

Проте, якщо ви вже знаходитесь в домашній папці цього користувача (це можна перевірити за допомогою команди pwd), ви можете просто використовувати відносний шлях:

 Desktop/"Мої Секрети" 

Пробіли

Для правильної обробки команди в терміналі потрібно коректно обробляти пробіли. Коли zsh зустрічає пробіл, він розглядає його як кінець команди. Тому, якщо у вас є папка з пробілами в назві, наприклад, “Тестовий Шлях”, і ви спробуєте вивести її вміст, використовуючи:

 ls Documents/Тестовий Шлях 

…ви отримаєте повідомлення про помилку “Немає такого файлу або каталогу”. Що трапилось? Zsh інтерпретує це як виклик команди ls до папки Documents/Тестовий. Оскільки такої папки не існує, команда не виконується.

Щоб zsh правильно розпізнав повну назву вашої папки, ви можете взяти назву в лапки:

 ls Documents/"Тестовий Шлях" 

Або ж використовувати зворотній слеш перед пробілом:

 ls Documents/Тестовий\ Шлях 

Після цього буде виведено вміст каталогу “Тестовий Шлях”.

Філ Кінг/MakeUseOf

Sudo

Багато з наступних команд вимагають прав адміністратора. Якщо ви не ввійшли в обліковий запис адміністратора, але знаєте пароль адміністратора, ви можете ввести sudo (скорочення від “superuser do”) перед командою, щоб тимчасово надати їй права адміністратора.

Команди терміналу для оптимізації вашої роботи

Тепер, коли ви ознайомились з основами, розглянемо деякі з найбільш корисних команд терміналу. Зверніть увагу, що детальну інформацію про кожну команду, включно з усіма її параметрами та прикладами, можна отримати, ввівши:

 man <назва команди> 

…у терміналі.

find

Аналог: Spotlight

Перевага: працює швидше та шукає в системних папках, які Spotlight виключає або має проблеми з індексуванням. Spotlight часто пропускає системні файли macOS, якщо не вказати йому це явно, і навіть тоді можуть виникнути проблеми з їх індексуванням. З іншого боку, команда find у терміналі може шукати будь-що будь-де та виведе повний шлях до результату пошуку.

Синтаксис find складається з чотирьох основних компонентів. У порядку:

  • find
  • шлях до каталогу (папки), де потрібно шукати (наприклад, Documents)
  • параметри (наведений приклад використовує -d (рівень глибини каталогу) та -name (відповідає імені))
  • рядок для пошуку (у наведеному прикладі це “Google Chrome”)
  • Варто знати, що find використовує регулярні вирази. У цьому випадку ми використовуємо зірочку (*), яка діє як символ підстановки. Її використання наприкінці пошукового рядка означає, що find виведе результати, які містять символи до та після пошукового терміну.

     find Documents -d 1 -name "p*" 

    Разом все це означає:

    Це знайде всі файли або папки, назви яких починаються з літери “p” у каталозі “Документи” (без перегляду підкаталогів, завдяки опції -d 1, яка вказує на глибину першого рівня).

    Філ Кінг/MakeUseOf

    du

    Аналог: Cmd + I для показу інформації.

    • Перевага: дозволяє переглядати розміри декількох папок одночасно, а також зазвичай завантажується швидше. du означає “використання диска” і може швидко надати інформацію про розмір файлу або папки, або навіть вивести список файлів у папці. Корисними параметрами для du є:
    • -d (глибина): з наступним числом, обмежує пошук du до вказаного рівня глибини в каталозі, з якого запускається. Наприклад, du -d 1 Документи покаже тільки загальний розмір файлів і папок першого рівня вкладеності у папці “Документи”.

    -h (читабельний для людини): показує розмір файлів у К, М або Г, що означає кіло-, мега- або гігабайти.

    Філ Кінг/MakeUseOf

    mv

    Аналог: переміщення папок і файлів за допомогою миші.

    Перевага: працює швидше та не вимагає навігації. За допомогою mv можна швидко перемістити файл або папку з одного каталогу в інший. Це працює шляхом зміни імені шляху.

     mv <старий шлях до файлу> <новий шлях до файлу> 

    Синтаксис:

     mv /Users/ivan.petrenko/Documents/file1.rtf /Users/ivan.petrenko/Desktop/file1.rtf 

    Наприклад:

    …перемістить файл file1.rtf з папки “Документи” користувача ivan.petrenko на його робочий стіл.

    ls

    Аналог: Cmd + I для показу інформації.

    Перевага: працює швидше, може показувати інформацію про кілька файлів одночасно та має широкі можливості налаштування. ls – це потужна команда, що відображає вміст ваших папок. Вона також може показати, кому дозволено їх переглядати, чи є приховані файли або папки, і багато іншого.

    • Корисні параметри для ls:
    • -l (розширений): показує дозволи для кожного файлу в папці, час останньої зміни, власника файлу та назву файлу.

    -a (усі): показує всі файли в папці, включаючи приховані файли (особливо корисно для показу папки “Бібліотека” користувача в macOS, яка за замовчуванням прихована).

    Ось так виглядає приклад виведення:

    Філ Кінг/MakeUseOf

    mkdir

    Аналог: Finder > Файл > Нова папка

    Перевага: працює швидше, і ви можете задати назву папки прямо в команді, не клацаючи двічі по новій папці. Ця команда дозволяє миттєво створювати нові папки.

     mkdir /Users/ivan.petrenko/Desktop/cool_stuff 

    Наприклад, команда:

    … створить нову папку “cool_stuff” на робочому столі.

    rm

    Аналог: переміщення файлів у кошик та його очищення.

    Перевага: працює швидше, особливо корисно для видалення файлів, які не можна видалити з кошика. Ця команда негайно видаляє будь-який файл, шлях до якого ви вкажете. Звісно, використовуйте її з обережністю. На відміну від “Очистити кошик”, rm не запитує підтвердження. Вона вважає, що ви знаєте, що робите.

    Важливо зазначити, що за замовчуванням rm видаляє тільки файли, а не папки. Для видалення папок потрібно використовувати параметр -R, що означає “рекурсивно”.

     rm -R /Users/ivan.petrenko/Desktop/cool_stuff 

    Наприклад, команда:

    … видалить папку “cool_stuff” з робочого столу.

    Тепер, коли ви ознайомлені з деякими важливими командами терміналу, ви можете почати інтегрувати їх у свій щоденний робочий процес на Mac. Коли ви освоїте zsh, ви зможете вийти за рамки простої заміни повсякденних завдань та відкрити для себе можливості, які пропонує командний рядок.