Linux. Робота з каталогами. Посилання
[user]$ cp [options] source destination
[user]$ cp [options] source_directory new_directory
У першому випадку чи файл каталог source копіюється, відповідно, у чи файл каталог destination, а в другому випадку файли, що містяться в каталозі source_directory копіюються в каталог new_directory. Для копіювання треба мати права на читання файлів, що копіюються, і права на запис у каталог, у який виробляється копіювання.
Якщо в якості цільового вказується існуючий файл, то його вміст буде затерто, тому при копіюванні треба дотримувати обережності. Утім, можна використовувати команду cp з опцією -i, тоді перед перезаписом існуючого файлу буде запитуватися підтвердження (дуже рекомендую вам завжди використовувати цю опцію!).
У команди cp є ще кілька корисних опцій (табл. 1).
Таблиця 1. Основні опції команди cd.
ОпціяЗначення
-pЗберігає час модифікації файлу і максимально можливі повноваження. Без цієї опції для нового файлу задаються повноваження, що відповідають повноваженням користувача, що запустив команду
-R чи -r Якщо source — каталог, то копіюється як він, так і усі вхідні в нього підкаталоги, тобто зберігається вихідна форма дерева каталогів
-dЯкщо задати цю опцію, то символічні посилання будуть залишатися посиланнями (а інакше замість посилання копіюється файл, на який дається посилання)
-fПерезаписувати файли при копіюванні (якщо такі вже є) без додаткових попереджень
Команда mv
Якщо вам необхідно не скопіювати, а перемістити файл з одного каталогу в іншій, ви можете скористатися командою mv. Синтаксис цієї команди аналогічний синтаксису команди cp. Більш того, вона спочатку копіює файл (чи каталог), а тільки потім видаляє вихідний файл (каталог). І опції в неї такі ж, як у cp.
Команда mv може використовуватися не тільки для переміщення, але і для перейменування файлів і каталогів (тобто переміщення їх усередині одного каталогу). Для цього треба просто задати як аргументи старе і нове ім'я файлу:
[user]$ mv oldname newname
Але врахуйте, що команда mv не дозволяє перейменувати відразу кілька файлів (використовуючи шаблон імені), так що команда mv *.xxx *.yyy не буде працювати.
При використанні команди mv, також як і при використанні cp, не забувайте застосовувати опцію -i для того, щоб одержати попередження, коли файл буде перезаписуватися.
Команди rm і rmdirДля видалення непотрібних файлів і каталогів у Linux служать команди rm (видаляє файли) і rmdir (видаляє порожній каталог) . Для того, щоб скористався цими командами, ви повинні мати право запису в каталозі, у якому розташовані файли, що видаляються, чи каталоги. При цьому повноваження на зміну самих файлів не обов'язкові. Якщо хочете перед видаленням файлу одержати додатковий запит на підтвердження операції, використовуйте опцію -i.