Практика 4. Операционные системы
L4: Работа с файлами, текстом, поиском и архивами в Linux
Цель задания
Научиться работать с файлами, каталогами, текстовыми данными и архивами, а также освоить поиск и фильтрацию информации с использованием команд Linux.
Исходные данные:
- Сервер:
62.113.44.178 - Имя пользователя:
user_name - Пароль:
87743321
Часть 1: Изучение команд
Шаг 1: Изучите следующие команды
Используйте команду --help, чтобы узнать, как работает каждая команда и какие у нее есть параметры. Приведены примеры строк, которые помогут вам понять назначение этих команд:
-
pwd — выводит текущий рабочий каталог.
- Пример: показать полный путь к текущему каталогу.
Окно терминала pwd
- Пример: показать полный путь к текущему каталогу.
-
ls — отображает список файлов и каталогов.
- Пример: вывести список файлов и каталогов с подробной информацией.
Окно терминала ls -la
- Пример: вывести список файлов и каталогов с подробной информацией.
-
mkdir — создает новый каталог.
- Пример: создать каталог
project_folder.Окно терминала mkdir project_folder
- Пример: создать каталог
-
cd — перемещается в указанный каталог.
- Пример: перейти в каталог
project_folder.Окно терминала cd project_folder
- Пример: перейти в каталог
-
echo — выводит текст или записывает его в файл.
- Пример: записать текст в файл.
Окно терминала echo "Hello, world!" > file.txt
- Пример: записать текст в файл.
-
cat — выводит содержимое файла на экран.
- Пример: вывести содержимое файла
file.txt.Окно терминала cat file.txt
- Пример: вывести содержимое файла
-
mv — перемещает или переименовывает файлы и каталоги.
- Пример: переименовать файл
old_name.txtвnew_name.txt.Окно терминала mv old_name.txt new_name.txt
- Пример: переименовать файл
-
cp — копирует файлы и каталоги.
- Пример: скопировать файл
file.txtв новый файлfile_copy.txt.Окно терминала cp file.txt file_copy.txt
- Пример: скопировать файл
-
rm — удаляет файлы или каталоги.
- Пример: удалить файл
file.txt.Окно терминала rm file.txt
- Пример: удалить файл
-
grep — поиск текста в файлах.
- Пример: найти все строки, содержащие слово “ERROR” в файле
log.txt.Окно терминала grep "ERROR" log.txt
- Пример: найти все строки, содержащие слово “ERROR” в файле
-
find — поиск файлов и каталогов по критериям.
- Пример: найти все файлы с расширением
.txtв текущем каталоге.Окно терминала find . -name "*.txt"
- Пример: найти все файлы с расширением
-
sort — сортировка строк в файлах.
- Пример: отсортировать строки в файле
data.txtи вывести результат.Окно терминала sort data.txt
- Пример: отсортировать строки в файле
-
uniq — удаление повторяющихся строк.
- Пример: удалить дубликаты строк из файла
sorted_data.txt.Окно терминала uniq sorted_data.txt
- Пример: удалить дубликаты строк из файла
-
tar — создание и извлечение архивов.
- Пример: создать архив всех файлов из каталога
srcи сохранить его в файлarchive.tar.gz.Окно терминала tar -czvf archive.tar.gz src/
- Пример: создать архив всех файлов из каталога
-
wc — подсчет строк, слов и символов в файлах.
- Пример: подсчитать количество строк, слов и символов в файле
data.txt.Окно терминала wc data.txt
- Пример: подсчитать количество строк, слов и символов в файле
-
diff — сравнение двух файлов и вывод различий.
- Пример: сравнить два файла
file1.txtиfile2.txtи вывести различия.Окно терминала diff file1.txt file2.txt
- Пример: сравнить два файла
-
awk — обработка текстовых данных и выполнение операций над ними.
- Пример: суммировать все числа в первом столбце файла data.txt и выводит результат
Окно терминала awk '{sum += $1} END {print sum}' data.txt
- Пример: суммировать все числа в первом столбце файла data.txt и выводит результат
Часть 2: Выполнение задач с файлами и текстом
Шаг 1: Работа с каталогами и файлами
-
Создайте структуру каталогов:
- Создайте каталог
project_folderс подкаталогамиsrc,logs,data, иarchive.
- Создайте каталог
-
Создайте несколько файлов в каталоге
src:- В каталоге
srcсоздайте три файла:data1.txt,data2.txt, иdata3.txt. - Заполните каждый файл случайными числами и буквами в несколько строк.
- В каталоге
-
Создайте файл журнала:
- В каталоге
logsсоздайте файлevents.log, в котором запишите 10 различных сообщений (информационные, предупреждения и ошибки).
- В каталоге
-
Поиск сообщений в файле журнала:
- Найдите все строки с сообщениями об ошибках в файле
events.logи сохраните их в отдельный файлerror.log.
- Найдите все строки с сообщениями об ошибках в файле
Шаг 2: Работа с текстом и данными
-
Объединение файлов данных:
- Объедините содержимое файлов
data1.txt,data2.txtиdata3.txtв один файлcombined_data.txtв каталогеdata.
- Объедините содержимое файлов
-
Сортировка данных:
- Отсортируйте строки в файле
combined_data.txtи сохраните результат в отдельный файл.
- Отсортируйте строки в файле
-
Удаление дубликатов:
- Удалите повторяющиеся строки в отсортированном файле и сохраните результат в новый файл.
-
Подсчет строк в файле:
- Подсчитайте количество строк в файле с уникальными данными и сохраните результат в файл отчета.
-
Поиск числа “50” в объединённом файле:
- Найдите все строки в
combined_data.txt, содержащие число “50”, и сохраните результат в файл.
- Найдите все строки в
-
Создание нового файла с умноженными значениями:
- Создайте новый файл, где числа из
combined_data.txtумножены на 2.
- Создайте новый файл, где числа из
-
Создание файла с уникальными буквами:
- Извлеките все буквы из файла
combined_data.txt, удалите дубликаты и сохраните их.
- Извлеките все буквы из файла
-
Подсчет количества уникальных букв:
- Подсчитайте количество уникальных букв и сохраните результат.
-
Создание файла с данными пользователей:
- Создайте файл с данными нескольких пользователей (имя, возраст, город).
-
Фильтрация пользователей по возрасту:
- Фильтруйте пользователей по возрасту (больше 30 лет) и сохраните результат.
Часть 3: Поиск и фильтрация
-
Найдите все строки с буквой “A”:
- Найдите все строки, содержащие букву “A” в файле с уникальными данными.
-
Поиск файлов по размеру:
- Найдите все файлы в каталоге, которые имеют размер более 0 байт.
-
Поиск всех файлов старше 7 дней:
- Найдите все файлы, которые были изменены более 7 дней назад.
-
Поиск файлов с расширением
.log:- Найдите все файлы с расширением
.log.
- Найдите все файлы с расширением
-
Поиск строк с определённым числом в логе:
- Найдите строки, содержащие число “404”, в файлах журнала.
Часть 4: Архивирование данных
-
Создание архива проекта:
- Создайте архив всех файлов из каталога
dataи сохраните его в каталогеarchive.
- Создайте архив всех файлов из каталога
-
Извлечение архива:
- Извлеките архив в новый каталог.
-
Создание архива с журналами:
- Создайте архив всех файлов журнала и сохраните его.
-
Извлечение архивированных журналов:
- Извлеките архив с журналами в новый каталог.
-
Просмотр содержимого архива без извлечения:
- Проверьте содержимое архива без его извлечения.
Часть 5: Сравнение и анализ
-
Сравнение двух файлов:
- Сравните файлы
data1.txtиdata2.txtи сохраните различия в файл.
- Сравните файлы
-
Подсчет различий:
- Подсчитайте количество различий между файлами.
-
Сравнение двух файлов журнала:
- Сравните два файла журнала и сохраните отличия.
-
Анализ различий в журналах:
- Проведите анализ найденных различий.
-
Подсчет количества ошибок и предупреждений:
- Подсчитайте количество ошибок и предупреждений в файлах журнала.
Что нужно отправить:
По завершению задания сделайте скриншоты выполнения каждой команды и отправьте их на проверку.