Skip to content

Лекція 20. Створюємо, копіюємо, переміщуємо і видаляємо файли

Лекція 20. Створюємо, копіюємо, переміщуємо і видаляємо файли

Section titled “Лекція 20. Створюємо, копіюємо, переміщуємо і видаляємо файли”

Рівень 4: Хранитель файлів

Марко, сьогодні ми не просто вивчимо новий термін — ми відкриємо ще один шар того, як насправді працює комп’ютер.

Що ми сьогодні розкриємо

Section titled “Що ми сьогодні розкриємо”
  • навчитися безпечно змінювати навчальну файлову структуру
  • розуміти mkdir, touch, cp, mv, rm
  • виховати звичку перевіряти шлях перед видаленням

Зв’язок з попередніми лекціями

Section titled “Зв’язок з попередніми лекціями”

У цій лекції ми використаємо знання про шляхи з лекції 19, щоб безпечно створювати, копіювати, переміщувати й видаляти файли в терміналі.

Усі вправи з rm виконуємо тільки всередині ~/marko-lab/sandbox. Не використовуємо sudo і не копіюємо команди видалення з Інтернету без розуміння кожної частини.

Термінал може не лише дивитися, а й змінювати

Section titled “Термінал може не лише дивитися, а й змінювати”

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

П’ять базових інструментів

Section titled “П’ять базових інструментів”
  • mkdir — створити каталог.
  • touch — створити порожній файл або оновити його час зміни.
  • cp — копіювати.
  • mv — перемістити або перейменувати.
  • rm — видалити файл.

mv old.txt new.txt у тій самій папці фактично перейменовує файл.

У терміналі rm зазвичай не переносить файл до графічного кошика. Тому ми тренуємося лише в ~/marko-lab/sandbox і не використовуємо sudo rm.

Команди на кшталт rm -rf можуть видаляти цілі дерева без додаткових запитань. На цьому рівні вони нам не потрібні.

mkdir mission створює папку mission у поточній директорії.

cp note.txt backup.txt створює окрему копію. Зміна одного файлу після цього не повинна автоматично змінювати інший.

mv draft.txt final.txt змінює ім’я, якщо обидва шляхи в одній папці.

Linux-лабораторія: безпечна пісочниця

Section titled “Linux-лабораторія: безпечна пісочниця”
Terminal window
mkdir -p ~/marko-lab/sandbox
cd ~/marko-lab/sandbox
pwd
touch alpha.txt
mkdir box
cp alpha.txt copy.txt
mv copy.txt box/copied.txt
ls -R
rm alpha.txt
ls -R

Перед rm alpha.txt ще раз перевір pwd. Це має стати автоматичною звичкою.

Виконай місію по черзі. Якщо щось не виходить — спочатку перечитай приклад вище й спробуй знайти, на якому кроці результат відрізняється.

  1. повтори лабораторію у пісочниці
  2. створи папку mission-20 і три файли всередині
  3. скопіюй один файл під новим ім’ям
  4. перемісти інший файл у вкладену папку
  5. перед видаленням третього виконай pwd і ls, а потім видали лише цей файл
  • Що робить cp?
  • Чим mv може відрізнятися від cp?
  • Чому перед rm корисно виконати pwd?
  • Чи потрапляє rm автоматично у графічний кошик?
  • У якій папці ми домовилися тренувати видалення?
  • mkdir — «make directory»: створити каталог.
  • touch — створити порожній файл або оновити його час зміни.
  • cp — «copy»: зробити копію файлу.
  • mv — «move»: перемістити або перейменувати.
  • rm — «remove»: видалити; на відміну від графічного кошика, без підказки.
  • Пісочниця (sandbox) — навчальна зона, де безпечно експериментувати (~/marko-lab/sandbox).

Чек-лист перед наступною лекцією

Section titled “Чек-лист перед наступною лекцією”
  • Чи можеш ти пояснити призначення команд mkdir, touch, cp, mv, rm?
  • Чи знаєш ти, як створити та видалити каталог?
  • Чи розумієш ти, як копіювати та переміщувати файли?

Що потрібно винести з лекції

Section titled “Що потрібно винести з лекції”
  • команди файлів змінюють реальний стан файлової системи
  • cp копіює, mv переносить/перейменовує, rm видаляє
  • безпечний системний дослідник завжди перевіряє контекст перед руйнівною командою

Хакерський принцип: не запам’ятовуй магічні слова. Намагайся пояснити своїми словами, що відбулося і чому.