Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Команди для роботи с файлами та каталогами в linux






Команди chown і chgrp

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

[root]# chown vasja ім'я-файлу

[root]# chgrp usersgrp ім'я-файлу

Команда mkdir

Команда mkdir дозволяє створити підкаталог у поточному каталозі. Як аргумент цій команді треба дати ім'я створюваного каталогу. У знову створеному каталозі автоматично створюються два записи: ‘.’ (посилання на цей самий каталог) і ‘..’ (посилання на батьківський каталог). Щоб створити підкаталог, ви повинні мати в поточному каталозі право запису. Можна створити підкаталог не в поточному, а в якімсь іншому каталозі, але тоді необхідно вказати шлях до створюваного каталогу:

[user]$ mkdir /home/kos/book/glava5/part1

Команда mkdir може використовуватися з наступними опціями:

1. -m mode — задає режим доступу для нового каталогу (наприклад, —m 755);

2. –p — створювати зазначені проміжні каталоги (якщо вони не існують).

Команда cat

Команда cat часто використовується для створення файлів (хоча можна скористатися й командою touch). По команді cat на стандартний вивід (тобто на екран) виводиться вміст зазначеного файлу (або декількох файлів, якщо їхні імена послідовно задати як аргументи команди). Якщо вивід команди cat перенаправляти у файл, то можна одержати копію якогось файлу:

[user]$ cat file1 > file2

Первісне призначення команди cat саме й припускало перенапрямок виводу, тому що ця команда створена для конкатенації, тобто об'єднання декількох файлів в один:

[user]$ cat file1 file2... file > new-file

Саме можливості перенапрямку вводу й виводу цієї команди й використовуються для створення нових файлів. Для цього на вхід команди cat направляють дані зі стандартного ввводу (тобто із клавіатури), а вивід команди — у новий файл:

[user]$ cat > newfile

Після того, як ви надрукуєте все, що хочете, натисніть комбінацію клавіш < Ctrl> +< D> або < Ctrl> +< C>, і все, що ви ввели, буде записане в newfile. Звичайно, у такий спосіб створюються, в основному, короткі текстові файли.

Команда cp

Хоча для копіювання файлів іноді користуються командою cat, але в Linux існує для цього спеціальна команда cp. Її можна застосовувати в одній із двох форм:

[user]$ cp [options] source destination

[user]$ cp [options] source_directory new_directory

У першому випадку файл або каталог source копіюється, відповідно, у файл або каталог destination, а в другому випадку файли, що знаходяться в каталозі source_directory копіюються в каталог new_directory. Для копіювання треба мати права на читання файлів, які копіюються, і права на запис у каталог, у який виробляється копіювання.

Якщо в якості цільового вказується існуючий файл, то його вміст буде затерто, тому при копіюванні треба дотримувати обережності. Втім, можна використовувати команду cp з опцією -i, тоді перед перезаписом існуючого файлу буде запитуватися підтвердження (дуже рекомендую вам завжди використовувати цю опцію).

У команди cp є ще кілька корисних опцій (табл. 2.1).

Таблиця 2.1. Основні опції команди cp

Опція

Значення

-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.

Якщо ви спробуєте використовувати команду rm (без усяких опцій) для видалення каталогу, то буде видане повідомлення, що це каталог, і видалення не відбудеться. Для видалення каталогу треба видалити в ньому всі файли, після чого видалити сам каталог за допомогою команди rmdir. Однак можна видалити й непустий каталог з усіма вхідними в нього підкаталогами й файлами, якщо використовувати команду rm з опцією -r.

Якщо ви дасте команду rm *, то видалите всі файли в поточному каталозі. Підкаталоги при цьому не вийдуть. Для видалення як файлів, так і підкаталогів поточного каталогу треба теж скористатися опцією -r. Однак завжди пам’ятайте, що в Linux немає команди відновлення файлів після їхнього видалення!

Команди more і less

Команда cat дозволяє вивести на стандартний вивід (на екран) зміст будь-якого файлу, однак вона використовується для цих цілей дуже рідко, хіба що для виводу дуже невеликих по обсягу файлів. Справа в тому, що вміст великого файлу миттєво проскакує на екрані, і користувач бачить тільки останні рядки файлу. Тому cat використовується в основному по її прямому призначенню — для конкатенації файлів, а для перегляду вмісту файлів (звичайно, текстових) використовуються команди more і less (або текстові редактори).

Команда-Фільтр more виводить уміст файлу на екран окремими сторінками, розміром саме в цілий екран. Для того, щоб побачити наступну сторінку, треба нажати на клавішу пробілу. Натискання на клавішу < Enter> приводить до зсуву на один рядок. Крім клавіш пробілу й < Enter> у режимі паузи ще деякі клавіші діють як керуючі (наприклад, клавіша < B> повертає вас на один екран назад), але ми тут не будемо приводити повного їхнього переліку, як і переліку опцій команди. Вам для початку треба ще тільки запам'ятати, що вийти з режиму перегляду можна за допомогою клавіші < Q>, тому що якщо ви цього не знаєте, то вам доведеться довго натискати пробіл, поки ви не доберетеся до кінця довгого файлу. Про всі опції команди more ви можете прочитати в інтерактивному керівництві man або info.

Утиліта less, розроблена в рамках проекту GNU, містить всі функції й команди керування виводом, наявні в програмі more, і деякі додаткові, наприклад, дозволяє використовувати клавіші керування курсором (< Стрілка нагору>, < Стрілка вниз>, < PgUp>, < PgDown>) для переміщення по тексту. Згадаєте, ми вже говорили про це, коли розглядали інтерактивну підказку man.

Команди more і less дозволяють робити пошук підрядка в переглядається файлі, що, причому команда less дозволяє робити пошук як у прямому, так і в зворотньому напрямку. Для організації пошуку рядка символів string треба набрати в командному рядку програми в нижній частині екрана (там, де двокрапка) /string. Якщо рядок, що шукається, буде знайдений, буде відображений відповідний шматок тексту, причому знайдений рядок буде перебувати в самому верху екрана.

Команда find і символи шаблонів для імен файлів

Ще однією часто використовуваною командою для роботи з файлами в Linux є команда пошуку потрібного файлу find. Команда find може шукати файли по ім'ю, розміру, даті створення або модифікації й деяким іншим критеріям.

Загальний синтаксис команди find має такий вигляд:

find [список_каталогів] критерій_пошуку

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.