Лабораторная работа по операционным системам. ЛР №2. Лабораторная работа по дисциплине Вычислительные машины, системы и сети Студент гр
Скачать 25.11 Kb.
|
Министерство науки и высшего образования Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР) Кафедра компьютерных систем в управлении и проектировании (КСУП) УПРАВЛЯЮЩИЕ ОПЕРАТОРЫ КОМАНДНОГО ЯЗЫКА Лабораторная работа по дисциплине «Вычислительные машины, системы и сети»
Томск 20 г. Задание Требуется разработать программу на языке shell (без использования команды find), выполняющую поиск в заданном поддереве файловой струк- туры всех файлов, имена которых отвечают заданному шаблону. Результатом работы программы является перечень имен искомых файлов на экране. Примечание. Программа состоит из двух скриптов. Главный скрипт выполняет вывод на экран приглашения ввести с клавиатуры имя-путь начального каталога и шаблон поиска. Далее он выполняет ввод этих данных с клавиатуры и выводит на экран перечень искомых файлов в начальном каталоге поиска (если они там есть). Затем он вызывает для каждого подкаталога вложенный скрипт, передав ему два входных параметра: 1) относительное имя подкаталога; 2) шаблон поиска. Вложенный скрипт выполняет поиск в заданном каталоге искомых файлов, а для каждого подкаталога вызывает точно такой же скрипт. (При выполнении любого скрипта запускается новый экземпляр shell, поэтому рекурсивное выполнение скриптов не приводит к каким-либо трудностям.) Решение Главный скрипт search_1.sh: echo Введите каталог и шаблон через пробел read dir pattern #Вызываем вложенный скрипт sh {$HOME}/search_2.sh "$dir" "$pattern" Вложенный скрипт search_2.sh: cd $1 ls $1 >tmp for name in tmp do if [ -d $name ] then $0 $name $2 else case $name in $2) echo $name;; esac fi done Литература Коцубинский В.П. Операционные системы: учебно-методическое пособие./ Коцубинский В.П., Изюмов А.А. – Томск: ТУСУР, 2016. – 244 с |