переміщення файлів
дочірнього каталогу. Другий аргумент - ім'я, яке файл буде мати в батьківському каталозі.
$ Ср імя_дочернего_каталога / имя_файла новое_імя_файла
У наступному прикладі файл version1 копіюється з каталогу props в початковий каталог:
$ Ср props / version1 version1
Припустимо тепер, що ви хочете скопіювати файл з дочірнього каталогу в батьківський. Вам потрібно якось вказати на цей батьківський каталог. Це можна зробити двома точками, які позначають колійне ім'я батьківського каталогу:
$ Ср ім'я файлу. $ Ср имя_файла. / новое__імя_файла
Наприклад, якщо props - ваш поточний робочий каталог і ви хочете скопіювати файл version1 з props в його батьківський каталог (в даному випадку в початковий каталог користувача), потрібно замість другого аргументу команди ср використовувати подвійну точку.
Якщо ви хочете дати копії файлу version1 нове ім'я, додайте його до другого аргументу через косу рису:
$ Ср version1. / newversion
За допомогою команди mv можна або змінити ім'я файлу, або перемістити файл з одного каталогу в інший. Використовуючи mv для перейменування файлу, в якості другого аргументу потрібно вказати нове ім'я файлу. Перший аргумент - поточне ім'я файлу.
$ Mv поточний имя_файла новое_імя_файла
У наступному прикладі ім'я файлу proposal змінюється на version1. $ Mv proposal version1
Як і при використанні команди ср, тут можна дуже просто зробити помилку, видаливши потрібний файл. Перейменовуючи файл, ви можете вибрати ім'я, яке вже носить інший файл, і цей файл буде видалений. Команда mv теж має опцію -i, яка спочатку перевіряє, чи існує файл з вказаним ім'ям. Якщо так, програма запитає, чи хочете ви перезаписати його. У наступному прикладі файл з ім'ям version1 вже існує. Програма виявляє, що буде здійснена перезапис, і питає, чи хочете ви це зробити чи ні.
$ Mv -i version1 proposal Overwrite proposal? n
Файл можна перенести з одного каталогу в інший. Для цього потрібно в якості другого аргументу в команді mv поставити ім'я каталогу. В даному випадку можна вважати, що команда mv НЕ перейменовує файл, а просто переносить його з одного каталогу в інший.
Після переміщення файлу у нього залишиться то ім'я, яке він носив у вихідному каталозі (якщо ви не вкажете іншого).
$ Mv имя_файла імя_каталога
У наступному прикладі файл newprop переміщається з початкового каталогу в каталог props.
$ Mv newprop props
Якщо при переміщенні файлу ви хочете перейменувати його, вкажіть нове ім'я файлу після імені каталогу. Ім'я каталогу відділяється від нового імені файлу косою рисою. У наступному прикладі файл newprop переміщається в каталог props і отримує ім'я version1.
$ Mv newprops props / version1 $ cd props
Вказавши ім'я дочірнього каталогу перед ім'ям файлу, його можна перемістити з цього каталогу назад в батьківський.
$ Mv props / version1 version1
Припустимо тепер, що ви зробили робочим каталогом дочірній і хочете перемістити файл з дочірнього каталогу в батьківський. Як і в разі використання команди ср, можна двома точками позначити батьківський каталог.
$ Mv ім'я файлу. / Нове ім'я файлу
Наприклад, якщо props - ваш поточний робочий каталог і ви хочете перемістити файл version1 з props в його батьківський каталог (в даному випадку в початковий каталог користувача), потрібно замість другого аргументу команди mv використовувати дві точки.
Якщо ви хочете дати файлу version1 в батьківському каталозі нове ім'я, додайте його до другого аргументу через косу рису:
$ Mv version1. / oldprop
Фактично ім'я файлу - це ім'я, попереджання колійним ім'ям його каталогу. При переміщенні файлу tuesday в каталог reports колійне ім'я змінилося. Повне ім'я файлу tuesday змінилося з / home / chris / tuesday на / home / chris / reports / tuesday. Тепер його колійне ім'я включає назву каталогу reports.
Настільки ж вільно можна використовувати абсолютне колійне ім'я. У наступному прикладі файл today переміщається в каталог reports і отримує нове ім'я, tuesday. Зверніть увагу: абсолютне колійне ім'я використовується в якості аргументу і в команді mv, і в команді ls.
$ Mv today / home / chris / reports / tuesday $ ls / home / chris / reports
Як і команда ср, команда mv дозволяє одночасно перемістити з одного каталогу в інший кілька файлів. Потрібно тільки ввести імена цих файлів в командному рядку. Останнім завжди має стояти ім'я нового каталогу. У наступному прикладі користувач переміщує файли Wednesday і friday в каталог lastweek.
wednesday friday lastweek
При створенні списку імен файлів для команди mv можна використовувати будь-які спеціальні символи. У наступному прикладі користувач переміщує всі файли вихідних текстів програм з поточного каталогу в каталог newproj.
Якщо ви хочете перемістити всі файли з даного каталогу в інший каталог, можна використовувати позначення *. * І отримати список всіх цих файлів. У наступному прикладі користувач переміщує всі файли з каталогу reports в каталог repbks.
$ Mv reports /*.* repbks
Система Linux дозволяє копіювати і переміщати цілі каталоги. Як перший аргумент команди ср і mv можуть використовувати ім'я каталогу, дозволяючи копіювати і переміщати підкаталоги з одного каталогу в інший. Перший аргумент - ім'я переміщуваного або копіюється каталогу, а другий - ім'я каталогу, в який він буде поміщений. При переміщенні і копіюванні каталогів діє та ж структура колійних імен, що і при відповідних операціях з файлами.
Підкаталоги можна так само легко, як і файли, копіювати з одного каталогу в інший. Для копіювання каталогу команду ср необхідно використовувати з опцією-г (скорочення від recursive, тобто "рекурсивний"). Ця опція дає команді ср вказівку копіювати каталог разом з усіма його підкаталогами. Іншими словами, копіюється все поддерево каталогів, починаючи з зазначеного. У наступному прикладі каталог thankyou копіюється в каталог oldletters. Після завершення цієї операції починають рівноправно співіснувати два підкаталогу thankyou: один в каталозі letters, інший в oldletters.
$ Ср -r letters / thankyou oldletters $ ls -F letters
$ Ls -F oldletters thankyou /
Припустимо, ви хочете скопіювати
скопіювати всі файли з каталогу letters в каталог oldletters, потрібно як перший аргумент поставити зірочку, і програма створить список всіх імен файлів, наявних в каталозі letters. Якщо потрібно вказати колійне ім'я першого аргументу, зробіть це, а зірочку поставте в кінці. У наступному прикладі всі файли з каталогу letters копіюються в каталог oldletters. Для letters вказано колійне ім'я, а зірочка в кінці цього імені позначає всі файли в даному каталозі.
$ Ср letters / * oldletters
Якщо ви хочете, щоб операція копіювання здійснювалася і над підкаталогами, потрібно вказати опцію -r.
$ Ср -r letters / * oldletters
спеціальний символ
Ви вже знаєте, як позначати тильдой абсолютне колійне ім'я початкового каталогу. Наприклад, при копіюванні файлу з нижчестоящого каталогу в початковий каталог тильдой можна позначити абсолютне колійне ім'я початкового каталогу. У наведеному нижче прикладі користувач переходить в каталог reports, а потім копіює з нього файл monday в початковий каталог.
$ Cd reports $ ср monday
Для того щоб при копіюванні файлу в початковий каталог дати йому нове ім'я, поставте нове ім'я після пари символів
/. У наступному прикладі файл monday копіюється в початковий каталог, і копія отримує ім'я today.
В аргументах команди mv тильда використовується точно так же. Нижче показано, як файл monday переміщається з каталогу reports в початковий каталог.
Якщо при переміщенні файлу з нижчестоящого каталогу в початковий ви міняєте його ім'я, то перед новим ім'ям файлу ставиться тильда з косою рисою,
/. У наступному прикладі користувач переходить в каталог reports, а потім переміщує файл monday в початковий каталог і дає йому ім'я today.
Тильду можна використовувати у всіх випадках, коли мова йде про дорожньому імені початкового каталогу. У наведеному нижче прикладі описані раніше команди mv і ls виконуються з тильдой.
Видалення файлу: команда rm
Команда rm може бути використана з будь-яким числом аргументів, що дозволяє одночасно видаляти кілька файлів. Імена цих файлів вказуються в командному рядку після імені команди.
$ Rm proposal version1 version2
Командою rm слід користуватися обережно, так як скасувати її дію не можна. Якщо файл видалений, відновити його не вдасться. Припустимо, що ви випадково ввели цю команду замість якоїсь іншої, наприклад, ср або mv. Коли ви схаменіться, буде занадто пізно - файли пропали. Для того щоб уникнути таких помилок, використовуйте команду rm з опцією -i, яка ініціює видачу запиту на підтвердження видалення. Тепер перед видаленням кожного файлу система буде запитувати, чи дійсно ви хочете видалити його. Якщо ви введете у, файл буде видалений. При будь-якому іншому відповіді файл не видаляється. У наступному прикладі за допомогою команди rm система отримує вказівку видалити файли proposal і oldprop, а потім запитує підтвердження по кожному з них. Користувач вирішує видалити oldprop, а proposal залишити.
$ Rm -i proposal oldprop Remove proposal? n