Файли та Папки

З поверненням.
У попередньому уроці ти навчився рухатися файловою системою.
Тепер час почати торкатися речей.
Обережно.
Бо термінал може створювати файли як чарівник, переміщати їх як професіонал і видаляти як маленький цифровий бульдозер без емоційної прив’язаності.
Що Ти Вивчиш
У цьому уроці ти навчишся:
- створювати папки за допомогою
mkdir; - створювати порожні файли за допомогою
touch; - копіювати файли й папки за допомогою
cp; - переміщати й перейменовувати файли за допомогою
mv; - видаляти файли за допомогою
rm; - видаляти порожні папки за допомогою
rmdir; - уникати небезпечних помилок.
Місія
Твоя місія проста:
Створити маленьку папку для практики, додати в неї файли, скопіювати їх, перейменувати, перемістити й видалити без драматичної Linux-опери.
Створи Папку для Практики
Спочатку перейди у свою домашню директорію:
cd
Тепер створи папку з назвою terminal-practice:
mkdir terminal-practice
Увійди в неї:
cd terminal-practice
Перевір, де ти:
pwd
Ти маєш побачити щось таке:
/home/viktor/terminal-practice
Добре. Це твій безпечний майданчик для практики.
Якщо щось піде не так тут, ми хоча б не знищуємо твої справжні документи.
Дуже професійно. Майже відповідально.
Створи Порожній Файл
Щоб створити порожній файл, використай touch.
touch notes.txt
Тепер покажи вміст папки:
ls
Ти маєш побачити:
notes.txt
Файл існує.
Він порожній, але існує.
Трохи як деякі наради.
Створи Більше Файлів
Створи ще кілька файлів:
touch todo.txt ideas.txt commands.txt
Тепер покажи їх:
ls
Ти маєш побачити щось таке:
commands.txt ideas.txt notes.txt todo.txt
Ти створив файли з термінала.
Без мишки. Без файлового менеджера. Без зайвої церемонії кліків.
Створи Папку Всередині Папки
Тепер створи папку з назвою backup:
mkdir backup
Перевір:
ls
Ти маєш побачити:
backup commands.txt ideas.txt notes.txt todo.txt
Папки допомагають організовувати файли.
Без папок комп’ютер стає цифровою шухлядою з кабелями, старими чеками і однією загадковою флешкою.
Скопіюй Файл
Щоб скопіювати файл, використовуй cp.
cp notes.txt backup/
Це копіює notes.txt у папку backup.
Перевір всередині backup:
ls backup
Ти маєш побачити:
notes.txt
Оригінальний файл залишається в головній папці, а копія лежить у backup.
Копіювання і Перейменування Одночасно
Можна скопіювати файл і дати копії нову назву:
cp todo.txt backup/todo-backup.txt
Перевір:
ls backup
Тепер ти маєш побачити:
notes.txt todo-backup.txt
Це корисно, коли хочеш зберегти стару версію файлу.
Бо іноді “final.txt” перетворюється на “final-final-spravzhniy-final-v7.txt”.
Ми всі там були.
Перейменуй Файл
Щоб перейменувати файл, використовуй mv.
mv ideas.txt project-ideas.txt
Тепер покажи файли:
ls
Ти маєш побачити project-ideas.txt замість ideas.txt.
У Linux перейменування — це фактично переміщення файлу в нову назву.
Просто. Трохи дивно. Дуже Linux.
Перемісти Файл
Перемісти commands.txt у папку backup:
mv commands.txt backup/
Перевір поточну папку:
ls
Потім перевір папку backup:
ls backup
Файл перемістився.
Його більше немає в початковому місці.
На відміну від копіювання, переміщення не залишає оригінал позаду.
Видали Файл
Щоб видалити файл, використовуй rm.
Створи файл, який можна безпечно видалити:
touch delete-me.txt
Тепер видали його:
rm delete-me.txt
Перевір:
ls
Файл зник.
Важливо: rm зазвичай не переміщує файли в кошик.
Він їх видаляє.
Linux не каже: “Ти впевнений, сонечко?”
Linux каже: “Готово.”
Тому ми поважаємо rm.
Видали Порожню Папку
Створи порожню папку:
mkdir empty-folder
Видали її за допомогою:
rmdir empty-folder
rmdir працює тільки з порожніми папками.
Якщо в папці є файли, Linux відмовиться.
Хоч раз Linux захищає тебе від тебе самого.
Насолоджуйся цим рідкісним моментом.
Видали Папку з Файлами Всередині
Щоб видалити папку і все, що всередині, можна використати:
rm -r folder-name
Але будь обережний.
rm -r означає рекурсивне видалення.
Воно видаляє папку і весь її вміст.
Це потужно.
І саме так народжуються сумні історії.
Поки що використовуй це тільки в папці для практики і лише тоді, коли точно знаєш, що видаляєш.
Типові Помилки
Забути, де ти знаходишся
Перед тим як щось видаляти, виконай:
pwd
Це показує, де ти.
Якщо ти не в папці для практики — зупинись і подумай.
Термінал винагороджує мислення. І карає сонні пальці.
Видалити не той файл
Це видаляє один файл:
rm notes.txt
А це видаляє всі .txt файли в поточній папці:
rm *.txt
Зірочка * дуже потужна.
Не використовуй її легковажно.
Це не прикраса. Це маленька командна граната.
Пробіли в назвах
Це може не спрацювати:
rm my file.txt
Використовуй лапки:
rm "my file.txt"
Або краще: поки вчишся, уникай пробілів у назвах файлів.
Використовуй назви типу:
my-file.txt
my_file.txt
notes.txt
Твоє майбутнє “я” подякує тобі.
Практика
Усередині terminal-practice спробуй це:
mkdir lesson3
cd lesson3
touch file1.txt file2.txt file3.txt
ls
mkdir backup
cp file1.txt backup/
mv file2.txt renamed-file2.txt
mv file3.txt backup/
ls
ls backup
Потім дай відповіді:
- Яка команда створює папку?
- Яка команда створює порожній файл?
- Яка команда копіює файл?
- Яка команда переміщує або перейменовує файл?
- Яка команда видаляє файл?
Міні-Завдання
Створи таку структуру, використовуючи тільки термінал:
terminal-practice/
└── project/
├── notes.txt
├── todo.txt
└── backup/
└── notes-backup.txt
Кроки:
- Створи папку
project. - Увійди в неї.
- Створи
notes.txtіtodo.txt. - Створи папку
backup. - Скопіюй
notes.txtуbackupякnotes-backup.txt. - Покажи все і перевір результат.
Без мишки.
Мишка ще відпочиває після другого уроку.
Підсумок
Сьогодні ти дізнався, що:
mkdirстворює папки;touchстворює порожні файли;cpкопіює файли;mvпереміщує або перейменовує файли;rmвидаляє файли;rmdirвидаляє порожні папки;rm -rвидаляє папки з вмістом, але його треба використовувати обережно.
Тепер ти вмієш створювати й організовувати файли з термінала.
Саме тут термінал починає виглядати не як страшне чорне вікно, а як інструмент.
Гострий інструмент.
Не махай ним навколо.
Наступний Урок
У наступному уроці ми навчимося читати файли й шукати всередині них за допомогою команд cat, less, head, tail і grep.
Бо створювати файли — це добре.
Але читати їх — ось де починається детективна робота.