Лаб. Занятие 8. Обязательные задания для решения в классе
Лаб. Занятие 8. Обязательные задания для решения в классе [2 балла]
Выполнение задания должно включать следующую последовательность действий:
Создать заготовку для текстового файла с отчетом по примеру в подготовке.
Каждую из указанных в задании команд следует выполнить в консоли.
В текстовый файл с отчетом следует вставить формулировку соответствующего задания, затем строки с командой и её выводом. Дать описание команды, если это нужно по заданию.
Текстовый файл, с результатами выполнения всех заданий, следует разместить в Moodle.
Используемые дополнительные файлы нужно заархивировать и загрузить на Moodle вместе с основным текстовым файлом
Задание 8.0
1. Определите абсолютный путь к своему домашнему каталогу. Создайте в домашнем каталоге дерево подкаталогов с тремя узлами и с именем ‘tree’. Создайте в каждом каталоге по одному файлу (touch/cat).
2. Для одного файла измените права доступа: удалите права чтения у всех, владельца, группы владельца и остальных. У другого файла добавьте права доступа на запись и выполнение для группы владельца, а у третьего добавьте те же права, но для остальных пользователей. Продемонстрируйте результат и удалите все подкаталоги и сам каталог ‘tree’ рекурсивно.
3. Создайте файл и с помощью цикла запишите в него числа от 1 до 65.
4. Сохраните в текстовом файле календари всех осенних месяцев текущего года.
5. Сохраните в текстовом файле имена первых десяти файлов каталога /etc с расширением .conf (ls, grep)
6. Составьте список всех файлов компьютера, изменённых за последние сутки (find).
Задание 8.1
1. Определите Ваши права на Ваш домашний каталог. Создайте файл `digits.txt`, запишите в него все десятичные цифры, выведите содержимое на консоль (echo, cat). Создайте новый файл и поместите в него содержимое файла`digits.txt` 15 раз с помощью цикла.
2. Для файла `digits.txt` удалите права доступа на чтение и запись у владельца и добавьте всем права на исполнение.
3. Сохраните в текстовом файле имена всех файлов каталога /etc, которые начинаются на букву “a” (ls, grep)
4. Определите, сколько файлов в системе принадлежит текущему пользователю (find, wc).
5. Запишите в файл с именем 'test.txt' первые 10 строк файла '.bashrc'. Переименуйте файл с именем 'test.txt' в файл '.bashrc_old'.
6. Сохраните в текстовом файле календарь 2х месяцев до текущего месяца и 3х после.
Задание 8.2
1. Создайте файл, содержащий две строки из цифр (cat). Определите, входит ли цифра '5' в этот файл.
2. Создать файл a.txt. Изменить права доступа к нему так, чтобы у владельца были права на чтение, запись и исполнение, у группы-владельца – только на запись, у остальных – никаких прав (chmod). Затем, снять право на чтение файла a.txt у владельца.
3. Определите, какой день недели будет 1-го сентября 2021 года (date).
4. Сохраните в текстовом файле первых десяти файлов каталога /etc, которые заканчиваются на букву “f” (ls, grep)
5. С помощью цикла запишите в файл 65 раз слово “Hello”
6. Определите, сколько файлов системы принадлежит пользователю `root` (find, wc).
Задание 8.3
1. Создайте каталог `work` и перейдите в него. Создайте в каталоге 3 файла. Для одного файла измените права доступа: удалите права чтения у всех, владельца, группы владельца и остальных. У другого файла добавьте права доступа на запись и выполнение для группы владельца, а у третьего добавьте те же права, но для остальных пользователей.
2. Вернитесь в домашний каталог. Удалите `work` вместе со всеми файлами рекурсивно. Определите абсолютный путь к своему домашнему каталогу.
3. С помощью цикла запишите в файл латинский алфавит.
4. Определите, сколько файлов в системе принадлежит текущему пользователю(find, wc).
5. Выведите справочную информацию о том, как использовать команду passwd. Найдите в файле /etc/passwd строку, отвечающую Вашему логину, и объясните значение каждого столбца.
6. Сохраните в текстовом файле календарь 3х месяцев до текущего месяца и 2х после.
Задание 8.4
1. Создайте текстовый файл. Допишите в этот текстовый файл несколько строк и сохраните с новым именем. Найдите, чем отличаются файлы (diff). Удалите оба файла.
2. Создайте файл, содержащий две строки из цифр (cat). Определите, входит ли цифра '5' в этот файл.
3. Создать файл a.txt. Изменить права доступа к нему так, чтобы у владельца были права на чтение, запись и исполнение, у группы-владельца – только на запись, у остальных – никаких прав (chmod). Затем, снять право на чтение файла a.txt у владельца.
4. Сохраните в текстовом файле календари всех весенних месяцев текущего года.
5. Составить список всех файлов компьютера, изменённых за последние сутки (find).
6. Добавить подстроку ‘mmcs’ в несколько файлов. Найти в текущем каталоге все файлы, в которых есть подстрока 'mmcs'.
Задание 8.5
1. Определить свой UID, узнать, к каким группам относится ваше регистрационное имя (id, groups).
2. Создайте каталог `work` и перейдите в него. Создайте в каталоге 3 файла. Для одного файла измените права доступа: удалите права чтения у всех, владельца, группы владельца и остальных. У другого файла добавьте права доступа на запись и выполнение для группы владельца, а у третьего добавьте те же права, но для остальных пользователей.
3. Собрать любые три файла в `tar`-архив и сжать его программой `gzip`. Распаковать полученный архив.
4. С помощью цикла запишите в файл 25 раз слово “World”
5. Определите, сколько файлов системы принадлежит текущему пользователю (find, wc).
6. Сохраните в текстовом файле имена первых десяти файлов каталога /etc с расширением .d (grep)
Задание 8.6
1. Сохраните в два текстовых файла первые пять и последние пять строк файла `/etc/passwd` (head, tail).
2. Для первого полученного файла установите права доступа нему так, чтобы у владельца были права на чтение, запись и исполнение, у группы-владельца — только на исполнение, у остальных — только на запись (chmod). Для второго файла снимите все права для всех.
3. Создайте каталог Res. Скопируйте в него одной командой все конфигурационные файлы из Вашего домашнего каталога. Перейдите в каталог Res. Выведите на консоль список файлов. Вернитесь в домашний каталог, удалите Res и все входящие в него файлы рекурсивно.
4. С помощью цикла запишите в файл латинский алфавит.
5. Выведите имена последних десяти файлов каталога `/etc` с расширением `.conf` (`ls`, `grep`, ` tail`).
6. Составить список всех файлов компьютера, изменённых за последние сутки (find).
Задание 8.7
1. Узнайте, какими правами доступа обладают вновь создаваемые файлы и каталоги (т. е. следует создать новый файл и новый каталог, и посмотреть для них права доступа). Изменить права доступа на файл так, чтобы у всех были права на все. У каталога оставить права на чтение, запись и исполнение только у владельца.
2. Выведите имена последних десяти файлов каталога `/etc`, которые заканчиваются на букву 'd' (`ls`, `grep`, `tail`).
3. Выведите на консоль календарь января 2020 года.
4. Создайте файл и с помощью цикла запишите в него числа от 1 до 65.
5. Сохранить в файл список всех конфигурационных файлов (find). Объяснить все опции.
6. Сохранить в два файла первые пять и последние пять строк файла /etc/passwd (head, tail).
Задание 8.8
1. Определите значение umask, при котором создаваемые файлы и каталоги будут недоступны для чтения, записи и исполнения никому, кроме владельца.
2. Создайте 2 разных каталога (имена любые), в каждом из них создайте файл с именем ’88.txt’. С помощью команды find найдите все абсолютные пути к файлам ’88.txt’. Измените всем найденным файлам с именем ’88.txt’ атрибут так, чтобы файл был доступен на чтение-запись только владельцу файла.
3. Сохраните в текстовом файле календарь 3х месяцев до текущего месяца и 2х после.
4. Создайте файл `digits.txt`, запишите в него все десятичные цифры, выведите содержимое на консоль (echo, cat). Создайте новый файл и поместите в него содержимое файла`digits.txt` 15 раз с помощью цикла.
5. Сохраните в текстовый файл 'com.txt' информацию о текущем пользователе (`id`), о содержимом текущего каталога(`ls`), о запущенных указанным пользователем процессах, о текущей дате и времени (`date`). Пользуясь командой `grep`, выделите (выведите на консоль) из строку из файла 'com.txt', соответствующую созданному файлу 'com.txt'.
6. Вывести строку файла /etc/passwd, соответствующую текущему пользователю (grep).
Задание 8.9
1. Создать файл `1.txt`. Изменить права доступа к нему так, чтобы у владельца были права на чтение и запись, у группы-владельца - только на запись, у остальных – только на выполнение (chmod).
2. Посчитайте, сколько пользователей определены в вашей системе. В этом Вам поможет файл /etc/passwd и команда wc.
3. Посчитать количество файлов размером от пятидесяти до ста мегабайт (find, wc )
4. Скопируйте файл ‘.bash_history’ в файл ‘tmp.txt’. Создайте файлы, содержащие первые 3, последние 3 строки файла ‘tmp.txt’. Удалите все созданные файлы.
5. Выведите на консоль все строки файла ‘.bash_history’ в алфавитном порядке (sort).
6. Создайте файл `digits.txt`, запишите в него все десятичные цифры, выведите содержимое на консоль (echo, cat). Создайте новый файл и поместите в него содержимое файла`digits.txt` 15 раз с помощью цикла.
Задание 8.a
1. Создать 2 разных каталога (имена любые), в каждом из них создать файл с именем ’8b.txt’. С помощью команды find найти все абсолютные пути к файлам ’8b.txt’.
2. Вывести список всех файлов каталога `/usr/bin`, имя которых начинается с буквы `z`.
3. Переименуйте файл `a.txt` в `aaa.txt` (если не получится, сначала измените права на доступ к этому файлу). При помощи команды cat допишите в конец этого файла пару строк. Выведите на консоль `aaa.txt`.
4. Создайте новый файл и с помощью цикла поместите в него 10 раз содержимое файла `aaa.txt`.
5. Продемонстрируйте, что означает "право на исполнение" для каталога. Для этого создайте каталог, измените его атрибут, примените к нему команды, позволяющие продемонстрировать в действии "право на исполнение".
6. Выведите на консоль календарь для 3х месяцев декабрь 2013, январь и февраль 2014.
Задание 8.b
1. Сохраните в два текстовых файла первые пять и последние пять строк файла `/etc/passwd` (head, tail).Для первого полученного файла установите права доступа нему так, чтобы у владельца были права на чтение, запись и исполнение, у группы-владельца — только на исполнение, у остальных — только на запись (chmod). Для второго файла снимите все права для всех.
2. Создайте каталог Res. Скопируйте в него одной командой все текстовые файлы из Вашего домашнего каталога. Перейдите в каталог Res. Выведите на консоль список файлов. Вернитесь в домашний каталог, удалите Res и все входящие в него файлы рекурсивно.
3. Посчитать количество файлов с определенной маской прав: владельцу разрешено читать и писать, группе владельца и остальным разрешено только читать. (find).
4. Вывести строку файла /etc/passwd, соответствующую текущему пользователю (grep).
5. С помощью цикла запишите в файл латинский алфавит.
6. Выведите на консоль календарь для января 2015 года.