author: Wale Soyinka contributors: Steven Spencer, Ganna Zhyrnova tested on: Всі версії tags: - лабораторна вправа - системні утиліти - cli
Лабораторна робота 3: Загальні системні утиліти¶
Завдання¶
Виконавши цю лабораторну роботу, ви зможете
- Використовувати звичайні системні утиліти, які є в більшості систем Linux
Приблизний час виконання цієї лабораторної роботи: 70 хвилин
Загальні системні утиліти в системах Linux¶
Вправи в цій лабораторній роботі охоплюють деякі основні системні утиліти, з якими повинні бути знайомі користувачі та адміністратори. Більшість команд використовуються для навігації та керування файловою системою. Файлова система складається з файлів і каталогів.
Вправи стосуватимуться використання утиліт – pwd
, cd
, ls
, rm
, mv
, ftp
, cp
, touch
, mkdir
, file
, cat
, find
та locate
.
Завдання 1¶
cd
¶
"cd" означає змінити каталог. Ви почнете ці лабораторні роботи, перейшовши до інших каталогів у файловій системі.
Щоб використовувати cd
¶
Увійдіть на комп'ютер як root
Перейдіть із поточного каталогу до каталогу /etc.
[root@localhost root]# cd /etc
Зауважте, що ваш запит змінився з “[root@localhost root]# ” на : “[root@localhost etc]# “
Перейдіть до каталогу
/usr/local/
[root@localhost etc]# cd /usr/local [root@localhost local]#
Питання
Що змінилося у вашому запиті?
Поверніться до домашнього каталогу root
[root@localhost local]# cd /root
Знову перейдіть до каталогу /usr/local/. Впишіть:
[root@localhost root]# cd /usr/local
Щоб перейти до батьківського каталогу локального каталогу, введіть «cd ..»
[root@localhost local]# cd ..
Питання
Що таке батьківський каталог для каталогу /usr/local/?
Щоб швидко повернутися до домашнього каталогу root, введіть «cd» без аргументів.
[root@localhost usr]# cd [root@localhost root]#
Завдання 2¶
pwd
¶
"pwd" означає "поточний робочий каталог". Він показує розташування у файловій системі, де ви перебуваєте.
Щоб використовувати pwd
¶
Щоб дізнатися тип поточного робочого каталогу
[root@localhost root]# pwd /root
Змініть свій каталог на /usr/local/ за допомогою команди «cd».
[root@localhost root]# cd /usr/local
Використовуйте
pwd
, щоб знайти поточний робочий каталог[root@localhost local]# pwd /usr/local
Повернутися до домашнього каталогу root.
[root@localhost root]# cd
Завдання 3¶
mkdir
¶
Команда «mkdir» використовується для створення каталогів. Ви створите два каталоги під назвою «folder1» і «folder2».
Щоб використовувати mkdir
¶
Впишіть:
[root@localhost root]# mkdir folder1
Створіть другий каталог під назвою folder2
[root@localhost root]# mkdir folder2
Тепер змініть свій робочий каталог на каталог “folder1”, який ви створили вище.
[root@localhost root]# cd folder1
Покажіть ваш поточний робочий каталог.
[root@localhost folder1]# pwd /root/folder1
Питання
Не виходячи з поточного каталогу, перейдіть до каталогу «folder2». Яка команда для цього?
Поверніться до домашнього каталогу root.
Завдання 4¶
touch
¶
Команда «touch» може бути використана для створення звичайних файлів. Ви створите «file11, file12, file21 і file22» у зазначених вище папках.
Щоб використовувати touch
¶
Змініть каталог, наприклад «cd», на folder1 і створіть file11
[root@localhost folder1]# touch file11
Перебуваючи в folder1, створіть «file12»
[root@localhost folder1]# touch file12
Тепер поверніться до домашнього каталогу root.
cd
до folder2 та створіть «file21» і «file22»[root@localhost folder2]# Touch file21 file22
Поверніться до домашнього каталогу root.
Завдання 5¶
ls
¶
Команда "ls" означає список. Вона відображає список вмісту каталогу.
Щоб використовувати ls
¶
Введіть
ls
у домашній каталог root[root@localhost root]# ls
Питання
Перелічіть вміст каталогу
Перейдіть до каталогу folder1
Виведіть вміст каталогу “folder1”. Впишіть
ls
[root@localhost folder1]# ls file11 file12
Перейдіть до каталогу folder2 і перелічіть його вміст тут:
Поверніться до домашнього каталогу та перерахуйте «всі» приховані файли та папки.
[root@localhost folder2]# cd [root@localhost root]# ls –a .. .bash_history .bash_logout .bash_profile .bashrc folder1 folder2 .gtkrc .kde screenrc
Щоб отримати довгий або детальний список усіх файлів і папок у вашому домашньому каталозі, введіть:
[root@localhost root]# ls –al total 44 drwx------ 5 root root 4096 May 8 10:15 . drwxr-xr-x 8 root root 4096 May 8 09:44 .. -rw------- 1 root root 43 May 8 09:48 .bash_history -rw-r--r-- 1 root root 24 May 8 09:44 .bash_logout -rw-r--r-- 1 root root 191 May 8 09:44 .bash_profile -rw-r--r-- 1 root root 124 May 8 09:44 .bashrc drwxrwxr-x 2 root root 4096 May 8 10:17 folder1 drwxrwxr-x 2 root root 4096 May 8 10:18 folder2 ………………………..
Завдання 6¶
mv
¶
Команда "mv" означає переміщення. Він перейменовує файли або каталоги. Він також може переміщувати файли.
Щоб використовувати mv
¶
Змініть каталог на каталог folder1 і перегляньте його вміст
[root@localhost root]# cd folder1 [root@localhost folder1] ls file11 file12
Ви перейменуєте file11 і file12 у каталозі folder1 на temp_file11 і temp_file12 відповідно.
[root@localhost folder1]# mv file11 temp_file11
Знову перерахуйте вміст folder1.
[root@localhost folder1]# ls
Питання
Запишіть зміст:
Перейменуйте file12 на temp_file12:
[root@localhost folder1]# mv file12 temp_file12
Не змінюючи каталог, перейменуйте file21 і file22 у folder2 на temp_file21 і temp_file22 відповідно.
[root@localhost folder1]# mv /root/folder2/file21 /root/folder2/temp_file21 [root@localhost folder1]# mv /root/folder2/file22 /root/folder2/temp_file22
Не змінюючи ваш поточний каталог, перегляньте вміст folder2.
Питання
Яка команда для цього? Також перелічіть результат команди?
Завдання 7¶
cp
¶
Команда "cp" означає копію. Він створює копії файлів або каталогів.
Змініть свій каталог на каталог folder2.
Скопіюйте вміст folder2 (temp_file21 і temp_file22) до folder1
[root@localhost folder2]# cp temp_file21 temp_file22 ../folder1
Перелічіть вміст folder1.
[root@localhost folder2]# ls ../folder1 temp_file11 temp_file12 temp_file21 temp_file22
Перелічіть вміст folder2. Зауважте, що оригінальні копії temp_file21 і temp_file22 залишаються в folder2.
[root@localhost folder2]# ls temp_file21 temp_file22
Завдання 8¶
file
¶
Утиліта file
використовується для визначення типів файлів або каталогів.
Щоб використовувати file
¶
Поверніться до домашнього каталогу.
Щоб перевірити, чи є "folder1" файлом або каталогом, впишіть:
[root@localhost root]# file folder1 folder1: directory
Перейдіть до каталогу folder1
Використовуйте утиліту
file
, щоб визначити тип файлу для temp_file11[root@localhost folder1]# file temp_file11 temp_file11: empty
Скористайтеся утилітою
file
, щоб дізнатися тип файлу для всіх файлів у каталозі folder1. Перелік тут:Змініть каталог на каталог /etc.
[root@localhost folder1]# cd /etc
Використовуйте утиліту
file
, щоб дізнатися тип файлу для файлу "passwd".[root@localhost etc]# file passwd
Питання
Який це тип файлу?
Завдання 9¶
cat
¶
cat
є скороченням від concatenate, що означає, що файли з’єднуються разом. Команда cat
також відобразить вміст цілого файлу на екрані. Ви будете використовувати cat
разом із символом переспрямування “>” щоб створити файл.
Щоб створити файл за допомогою cat
¶
Змініть каталог на каталог /root/folder1
Створіть новий текстовий файл під назвою «first.txt»
[root@localhost folder1]# cat > first.txt
Введіть наведену нижче фразу в пустому рядку та натисніть Enter.
Це рядок з first.txt !!
Одночасно натисніть Ctrl+C.
Введіть «cat first.txt», щоб прочитати щойно введений текст.
[root@localhost folder1]# cat first.txt This is a line from first.txt !!
Створіть інший файл під назвою “second.txt” за допомогою
cat
. Введіть у файл наступний текст – «This is a line from second.txt!!»Питання
Яка команда для цього?
Щоб використовувати cat
для об’єднання файлів¶
Ви об’єднаєте файли “first.txt” і “second.txt”. Впишіть:
[root@localhost folder1]# cat first.txt second.txt
Питання
Який ваш вихід?
Вправа 10¶
ftp
¶
ftp
— це програма-клієнт для використання та підключення до служб FTP через протокол передачі файлів. Програма дозволяє користувачам передавати файли на віддалений мережевий сайт і з нього. Це утиліта, яку ви можете часто використовувати.
У цій вправі ви дізнаєтесь, як анонімно увійти на сервер FTP і завантажити файл із сервера за допомогою клієнтської програми ftp
.
Примітка
Вам потрібно буде виконати вправи з попередньої лабораторної роботи, щоб продовжувати цю конкретну вправу, для якої потрібен доступний FTP-сервер, який працює десь доступно.
Щоб використовувати ftp
¶
Увійдіть на свою машину як root
Змініть каталог на “/usr/local/src/”.
Створіть новий каталог під назвою «завантаження» в каталозі «/usr/local/src/».
Питання
Яка команда для цього?
Змініть каталог на щойно створений каталог «завантажень».
[root@localhost src]# cd downloads
Введіть “ftp”, щоб запустити клієнт
ftp
.[root@localhost downloads]# ftp ftp>
Для підключення до FTP-сервера введіть:
ftp> open < server-address> (Obtain the <server-address> from your instructor) ……… 220 localhost.localdomain FTP server (Version wu-2.6.2-5) ready. ………..
Увійдіть як анонімний користувач. Введіть «anonymous» у запиті:
Name (10.4.51.29:root): anonymous
У вікні запиту пароля введіть будь-яку адресу електронної пошти та натисніть клавішу enter
Password: *************** 230 Guest login ok, access restrictions apply. Remote system type is UNIX. Using binary mode to transfer files. ftp>
Перейти в двійковий режим. Впишіть:
ftp> binary
Питання
Що таке вихід двійкової команди і що таке двійковий режим "двійковий режим"?
Перелічіть поточні каталоги на ftp-сервері. Введіть «ls» у запит ftp (ftp>):
ftp> ls 227 Entering Passive Mode (10,0,4,5,16,103). 125 Data connection already open; Transfer starting. 11-23-43 10:23PM <DIR> images 11-02-43 02:20PM <DIR> pub 226 Transfer complete.
Змініть каталог на каталог «pub». Впишіть:
ftp> cd pub
Використовуйте команду «ls», щоб отримати список файлів і каталогів у каталозі «pub».
Питання
Скільки файлів і каталогів там зараз?
Завантажте файл під назвою «hello-2.1.1.tar.gz» у свій локальний каталог. Введіть «yes» у запиті.
ftp> mget hello-2.1.1.tar.gz mget hello-2.1.1.tar.gz? yes 227 Entering Passive Mode (10,0,4,5,16,252). 125 Data connection already open; Transfer starting. 226 Transfer complete. 389363 bytes received in 0.0745 secs (5.1e+03 Kbytes/sec)
Вийдіть із FTP-сервера та вийдіть із клієнта
ftp
. Впишіть:ftp> bye
Ви будете кинуті назад у свою локальну оболонку.
Переконайтеся, що ви все ще перебуваєте в каталозі «завантажень» локальної машини.
Питання
Перелічіть файли в папці завантажень.
Вправа 11¶
Використання перенаправлення¶
Більшість утиліт і команд, якими ви користуєтеся в Linux, надсилають вихідні дані на екран. Екран називається стандартним виводом (stdout). Переспрямування дає змогу надіслати результат кудись ще – можливо, файл.
Кожна програма, запущена в системі Linux, має три дескриптори відкритих файлів: stdin (0), stdout (1) і stderr (2). Ви можете перенаправляти або передавати їх окремо. Символи перенаправлення: “>, < “
Щоб використовувати перенаправлення¶
Переконайтеся, що ви все ще перебуваєте в каталозі folder1.
Ви будете використовувати переспрямування виводу, щоб переспрямувати вихід із команди ls (list) до текстового файлу під назвою myredirects
[root@localhost folder1]# ls > myredirects
Перегляньте новий файл (myredirects), створений у каталозі folder1.
[root@localhost folder1] # cat myredirects temp_file11 temp_file12 temp_file21 temp_file22 myredirects
Тепер ви перенаправите вихід команди file у той самий файл. Ви хочете дізнатися тип файлу для temp_file11 у каталозі folder1 і надіслати результат у свій файл myredirects
[root@localhost folder1]# file temp_file11 > myredirects
Перегляньте вміст файлу myredirects.
Питання
Воно змінилося. Що сталося?
Якщо ви хочете запобігти тому, що сталося вище, ви скористаєтеся подвійним символом перенаправлення «>>». Це додасть новий вихід до файлу замість його заміни. Впишіть:
[root@localhost folder1]# ls >> myredirects
Тепер ще раз перевірте вміст файлу myredirects за допомогою
cat
.Питання
Запишіть його зміст тут:
Використання перенаправлення для придушення виводу команди¶
Ви будете часто використовувати концепції, розглянуті тут, у Linux, тому, будь ласка, зверніть на це особливу увагу. Це може бути трохи складно.
Бувають випадки, коли ви не хочете, щоб користувач бачив результат команди, можливо, повідомлення про помилку. Зазвичай це відбувається тому, що дивні повідомлення про помилки часто лякають звичайних користувачів. У цих вправах ви надішлете вихід своїх команд на нульовий пристрій ( /dev/null/ ). Нульовий пристрій схожий на «бітове відро». Все, що ви кладете всередину, зникає назавжди. Ви також можете надіслати (або перенаправити) звичайний вихід команди на нульовий пристрій "null device".
Використовуйте наведені нижче вказівки.
|Redirector|<p></p><p>Function</p>|
| :- | :- |
|> file|Direct standard output to file|
|< file|Take standard input from file|
|Cmd1 | cmd2|Pipe; take standard out of cmd1 as standard input to cmd2|
|n> file|Direct file descriptor n to file|
|N< file|Set file as file descriptor n|
|>&n|Duplicate standard output to file descriptor n|
|<&n|Duplicate standard input from file descriptor n|
|&>file|Direct standard output and standard error to file|
Переконайтеся, що ви все ще перебуваєте в каталозі folder1. Використовуйте опцію довгого списку команди ls у temp_file11:
[root@localhost folder1]# ls –l temp_file11 -rw-r--r-- 1 root root 0 Jul 26 18:26 temp_file11
Ви перенаправите вихід тієї ж команди вище (ls –l temp_file11) на нульовий пристрій.
[root@localhost folder1]# ls –l temp_file11 > /dev/null
У вас не повинно бути результату.
Тепер, якщо ви випадково неправильно ввели назву файлу, інформацію про який ви хочете переглянути; Ви отримаєте:
[root@localhost folder1]# ls –l te_file1 ls: te_file1: No such file or directory
Наведене вище є результатом типу помилки, яку було запрограмовано видати командою
ls
.Виконайте ту саму команду, що й вище, з неправильним написанням імені файлу та перенаправте його до /dev/null
[root@localhost folder1]# ls -l te_file1 > /dev/null ls: te_file1: No such file or directory
Питання
Що тут сталося? Чому вихідні дані все ще з’являються на екрані (stdout)?
З різних причин ви можете придушити такі повідомлення про помилки, як наведене вище. Щоб зробити це, впишіть:
[root@localhost folder1]# ls –l te_file1 > /dev/null 2>&1
Ви не отримаєте результату.
Цього разу стандартний вихід, а також стандартна помилка пригнічуються.
Порядок перенаправлення ВАЖЛИВИЙ!!
Переспрямування читається зліва направо в командному рядку.
Крайня ліва частина символу перенаправлення - «>»: надсилатиме стандартний вихід (stdout) до /dev/null. Тоді крайня права частина переспрямування - "2>&1 ": дублюватиме стандартну помилку (2) у стандартний вихід (1).
Отже, наведену вище команду можна прочитати так: перенаправити stdout(1) до “/dev/null”, а потім скопіювати stderr (2) до stdout
Щоб додатково продемонструвати важливість порядку перенаправлення. Спробуйте:
[root@localhost folder1]# ls –l tem_file 2>&1 > order.txt
Використовуйте команду
cat
, щоб перевірити вміст файлу “order.txt”Крайня ліва частина – «2>&1» скопіює стандартну помилку до стандартного виводу. Потім крайня права частина вищезазначеного – “ > order.txt» перенаправляє stdout до файлу order.txt.
Спробуйте цей варіант описаного вище кроку:
[root@localhost folder1]# ls –l hgh_ghz 2> order2.txt > order2.txt
Питання
Перегляньте файл “order2.txt” і поясніть, що сталося?
Щоб надіслати стандартний вивід і стандартну помилку в окремі файли, впишіть:
[root@localhost folder1]# ls –l tep_f > standard_out 2> standard_err
Питання
Було створено два нових файли. Як називаються файли і який їх вміст?
Ви можете аналогічно переспрямувати як stdout, так і stderr до одного файлу, використовуючи:
[root@localhost folder1]# ls –l te_fil &> standard_both
Вправа 12¶
rm
¶
Команда rm
видаляє файли або каталоги. Ви збираєтеся використати rm
, щоб видалити деякі з файлів, створених у попередніх вправах.
Щоб використати rm
¶
Перебуваючи в каталозі "folder1", видаліть файл standard_err. У запиті підтвердження введіть «y»:
[root@localhost folder1]# rm standard_err rm: remove `standard_err'? y
Видаліть файл «standard_out». Щоб запобігти запиту підтвердження перед видаленням файлу, скористайтеся параметром “–f “ з командою
rm
.[root@localhost folder1]# rm -f standard_out
Поверніться до домашнього каталогу (/root) і видаліть каталог «folder2». Щоб використати
rm
для видалення папки, потрібно використати перемикач «–r»:[root@localhost root]# rm -r folder2 rm: descend into directory `folder2'? y rm: remove `folder2/temp_file21'? y rm: remove `folder2/temp_file22'? y rm: remove directory `folder2'? y
Питання
Вам знову було запропоновано підтвердити видалення кожного файлу в каталозі та самого каталогу. Яку опцію ви використаєте з командою
rm –r
, щоб запобігти цьому?
Вправа 13¶
Вивчення vi
¶
vi
— текстовий редактор. Його можна використовувати для редагування всіх видів звичайного тексту. Це особливо корисно для редагування програм.
vi
- це великий товстий монстр, який може робити майже все, включаючи приготування кави чи какао!!
Замість того, щоб намагатися навчити вас vi
, ця вправа вкаже вам на інструмент, який може краще ознайомити вас з vi
.
Будь ласка, знайдіть час, щоб ознайомитися з онлайн-підручником vi
(точніше vim
). Просто дотримуйтесь інструкцій.
Для вивчення vi
¶
Увійшовши в систему, введіть:
[root@localhost root]# vimtutor
Вправа 14¶
Пошук файлів: (find
та locate
)¶
У цій вправі буде розглянуто дві найпопулярніші утиліти, які використовуються для пошуку файлів і каталогів у файловій системі. Це команди find
і locate
.
find
¶
Утиліта find
існує вже давно. Вона рекурсивно сканує каталоги, щоб знайти файли, які відповідають заданому критерію.
Загальний синтаксис find
має вигляд:
find [path] [options] [criterion] [action]
Якщо ви не вкажете жодного каталогу чи шляху, пошук буде здійснюватися в поточному каталозі. Якщо ви не вкажете критерій, це еквівалентно "true", тому всі файли будуть знайдені. Утиліта find
має багато параметрів для будь-якого типу пошуку файлу. Нижче наведено лише деякі параметри, критерії та дії.
ОПЦІЇ:
-xdev: не шукайте в каталогах, розташованих на інших файлових системах;
-mindepth <n>: спуститися принаймні на <n> рівнів нижче зазначеного каталогу раніше пошуку файлів;
-maxdepth <n>: шукати файли, розташовані не більше ніж на n рівнів нижче вказаного каталогу;
-follow: перейдіть за символічними посиланнями, якщо вони посилаються на каталоги.
-daystart: у разі використання тестів, пов’язаних із часом (див. нижче), візьміть початок поточного дня як позначку часу замість типової (за 24 години до поточного часу).
КРИТЕРІЇ
-впишіть <type>: пошук заданого типу файлу; <type> може бути одним із: f (звичайний файл), d (каталог),
l (символічне посилання), s (socket), b (файл режиму блокування), c (файл символьного режиму) або
p (іменований pipe);
-name <pattern>: знайти файли, імена яких відповідають заданим <pattern>;
-iname <pattern>: like - назва, але ігнорувати регістр;
-atime <n>, -amin <n>: знайти файли, доступ до яких був останні <n> дні тому (-atime) або <n> хвилини тому (-amin). Ви також можете вказати +<n> або -<n>, у цьому випадку пошук здійснюватиметься для файлів, до яких було відкрито щонайбільше або принаймні <n> днів/хвилин тому;
-anewer <file>: знайти файли, до яких відкривався нещодавно, ніж файл <file>;
-ctime <n>, -cmin <n>, -cnewer <file>: такий саме як -atime, -amin та -anewer, але застосовується до останнього часу, коли вміст файлу було змінено;
-regex <pattern>: такий саме як -name, але шаблон розглядається як регулярний вираз;
-iregex <pattern>: такий саме як -regex, але ігнорувати регістр.
ДІЇ:
-print: просто друкує назву кожного файлу на стандартному виводі. Це типова дія;
-ls: виводить на стандартний вивід еквівалент ls -ilds для кожного знайденого файлу;
-exec <command>: виконує команду <command> для кожного знайденого файлу. Командний рядок <command> має закінчуватися символом ;, який потрібно екранувати, щоб оболонка не інтерпретувала його; позиція файлу позначена {}.
-ok <command>: те саме, що -exec, але запитувати підтвердження для кожної команди.
Щоб використовувати find
¶
Переконайтеся, що ви перебуваєте у своєму домашньому каталозі.
Ви використаєте find для відображення всіх файлів у вашому поточному каталозі (
pwd
). Впишіть:[root@localhost root]# find ……….. ./.bash_profile ./.bashrc ./.cshrc ./.tcshrc ./.viminfo ./folder1 ./folder1/first.txt …………
Ваші результати показують типову поведінку find, коли використовується без жодного параметра.
Він рекурсивно відображає всі файли та каталоги (включаючи приховані файли) у робочому каталозі.
Тепер використовуйте
find
, щоб знайти лише каталоги у вашому pwd. Впишіть:[root@localhost root]# find -type d . ./folder1 ./folder2 ………
Питання
З наведеної вище команди «find –type d»; що таке «option», що таке «path», що таке «criterion» і, нарешті, що таке «action»?
Далі ви шукатимете всі файли у вашій системі, які закінчуються суфіксом «.txt».
[root@localhost root]# find / -maxdepth 3 -name "*.txt" -print /root/folder1/first.txt /root/folder1/second.txt /root/folder1/order.txt /root/folder1/order2.txt
Питання
Знову з наведеної вище команди; що таке «option», що таке «path», що таке «criterion» і, нарешті, що таке «action»? (ПІДКАЗКА: дія = “- print”)
Пошук виконуватиметься лише на 3 каталоги вглиб від каталогу “/”.
Зірочка, яка використовується в наведеній вище команді, є одним із символів підстановки в Linux.
Використання символів підстановки в Linux називається «глоббуванням».
Використовуйте команду
find
, щоб знайти всі файли у вашому “pwd”, які мають розмір “менший” за 200 кілобайт. Впишіть:[root@localhost root]# find . –size -200k
Використовуйте команду
find
, щоб знайти всі файли у вашому pwd, які «більші» за 10 кілобайт, а також відобразити їхній «тип файлу». Впишіть:[root@localhost root]# find . –size +10k –exec file "{ }" ";"
locate
¶
Синтаксис команди find
іноді може бути досить складним у використанні; і через інтенсивний пошук він може бути повільним. Альтернативною командою є locate
.
locate
здійснює пошук у попередньо створеній базі даних усіх файлів у файловій системі.
Він покладається на програму updatedb
.
search usage:
locate [-qi] [-d <path>] [--database=<path>] <search string>...
locate [-r <regexp>] [--regexp=<regexp>]
database usage: locate [-qv] [-o <file>] [--output=<file>]
locate [-e <dir1,dir2,...>] [-f <fs_type1,...> ] [-l <level>]
[-c] <[-U <path>] [-u]>
general usage: locate [-Vh] [--version] [--help]
Щоб використовувати locate
¶
Перейдіть до каталогу folder1 і створіть порожні файли temp1, temp2 і temp3:
[root@localhost root]# cd folder1; touch temp1 temp2 temp3 [root@localhost folder1]#
Крапка з комою (;), яка використовується у наведеній вище команді, дозволяє виконувати кілька команд в одному рядку!!
Використовуйте
locate
для пошуку всіх файлів у вашому pwd, які мають суфікс «temp»[root@localhost folder1]# locate temp* /root/folder1/temp_file11 /root/folder1/temp_file12 /root/folder1/temp_file21 /root/folder1/temp_file22
Зауважте, що три файли, які ви створили на кроці 1, НЕ знайдено.
Ви примусово оновите базу даних за допомогою
updatedb
, щоб дозволити їй враховувати всі новостворені файли. Впишіть:[root@localhost folder1]# updatedb
Тепер спробуйте пошук знову. Впишіть:
[root@localhost folder1]# locate temp
Питання
Що сталося цього разу?
Ви закінчили цю лабораторну роботу.