Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

LR OC / Вар 7 / лр4

.doc
Скачиваний:
5
Добавлен:
30.04.2013
Размер:
75.78 Кб
Скачать

Министерство образования и науки Российской Федерации

Московский государственный институт электроники и математики (технический университет)

Отчет по лабораторной работе №4

по дисциплине «Операционные системы»

Тема: «Командные файлы»

Выполнил:

студент группы С-41

Гребенюк А.В.

Вариант №1

Москва 2010

Задание: создать командный файл, который выводит список файлов вашего каталога вместе со списками числа строк, слов и символов для каждого файла.

Исключение: строка с суммами чисел строк, слов и символов в конце и директории внутри каталога. Поэтому создадим в папке os два каталога – dir1 и dir2 (для наглядности работы командного файла).

Команда wc <имя файла> позволяет выводить число строк, слов и байт (символов) (соответственно, ключи «-l», «-w» и «-c»). Если в качестве имени файла задать метасимвол «*», то команда по очереди будет выводить эту информацию с именами для всех элементов текущего каталога, включая каталоги и строку с суммами чисел строк, слов и символов в конце.

Эти ненужные по заданию вещи отфильтруем при помощи awk.

Каждый командный файл начинается с адреса интерпретатора (терминала), который должен его исполнять. Это /bin/bash, /bin/sh или др. Строка с адресом терминала должна начинаться с #! .

Напишем при помощи vim командный файл lr4.sh:

Для каталогов число строк (первый столбец) всегда возвращается равным нулю, поэтому, проверяем равен ли первый столбец нулю.

Чтобы запустить скрипт, сначала надо установить ему права доступа на исполнение. Поскольку исполнять файл будет пользователь, то можно поставить права исполнения только для пользователя (744):

Теперь выведем содержимое папки «os» и выполним скрипт (скрипты запускаются, как и программы через «./» перед адресом:

Как видно, каталоги «dir1» и «dir2» отсутствует в выводе скрипта.

Соседние файлы в папке Вар 7