48556

ОСНОВЫ РАБОТЫ В СРЕДЕ ОПЕРАЦИОННОЙ СИСТЕМЫ UNIX

Лабораторная работа

Информатика, кибернетика и программирование

Написать скрипт на языке shell, выполняющий периодический поиск и уничтожение файлов и пустых каталогов с определенным именем (имя файла, каталоги поиска и период поиска должны являться параметрами скрипта).

Русский

2014-07-12

33.68 KB

4 чел.

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

Санкт-Петербургский государственный политехнический университет

Факультет технической кибернетики

Кафедра «Информационная безопасность компьютерных систем»

ОТЧЕТ

по лабораторной работе №1

«ОСНОВЫ РАБОТЫ В СРЕДЕ ОПЕРАЦИОННОЙ СИСТЕМЫ UNIX»

по курсу «Операционные системы»

Выполнил

студент гр. 2088/4    А.А.Чернышев

                           <подпись>

Руководитель     А.С. Коноплев

                           <подпись>

Санкт-Петербург

2011

  1.  Формулировка задания

Цель работы — изучение среды операционной системы (ОС) UNIX, возможностей программирования командного интерпретатора SHELL, а также принципов работы с неинтерактивным текстовым редактором SED.

2. Использованные теоретические сведения

Материалы из методического пособия 01.pdf.

3. Результаты работы

3.1. Выполнение индивидуального задания

1) Написать скрипт на языке shell, выполняющий периодический поиск и уничтожение файлов и пустых каталогов с определенным именем (имя файла, каталоги поиска и период поиска должны являться параметрами скрипта).

#!/bin/bash

echo "Script find and delete files and empty folders with certain name in certain period."

rdir=$1

name=$2

time=$3

while [ -z $rdir ]

do

echo 1st

read rdir

done

while [ -z $name ]

do

echo 2nd

read name

done

while [ -z $time ]

do

echo 3rd

read time

done

OPTIONS="Yes Exit"

echo Remove files $name "in" $rdir every $time s?

select opt in $OPTIONS; do

if [ "$opt" = "Exit" ]; then

echo Exited

exit

elif [ "$opt" = "Yes" ]; then

cd $rdir

while [ true ]; do

for i in  $name;

do

if test -d $i

then rmdir $i

elif test -f $i

then rm $i

fi

done

sleep $time

done

else

clear

echo Incorrect change

fi

done

2) Написать скрипт на языке shell, выполняющий в текущем каталоге переименование всех файлов с именами “ftpd???.log” в файлы с именами “ftp???.log” (три произвольных символа в имени файла перед расширением “.log” должны сохраняться).

if [ $# -ne 1 ]; then

echo Usage: au.sh [ LOGFILE ]

exit 1

fi

days=$(sed 's/[\t].*//' $1 | sort | uniq)

for a in $days; do

echo \\n$a:\\n

sed -n '/'$a'/p' $1

done

echo \\nNumber\\tUsers\\tOperations\\n

sed 's/^[^\t]*[\t][^\t]*[\t]//g;s/[\t].*$//' $1 | sort | uniq -c

echo

sed 's/^[^\t]*[\t][^\t]*[\t]//g;s/[\t][//][^\t]*//' $1 | sort | uniq -c

echo \\nNumber\\tOperations\\n

sed 's/^[^\t]*[\t][^\t]*[\t][^\t]*[\t]//g;s/[\t][^\t]*//' $1 | sort | uniq -c

echo

echo Day of events you want to delete?

read day

echo

sed '/'$day'/d' $1

3) Разработать shell скрипт, использующий sed для анализа готового файла журнала аудита (формат файла приведен в примере)

Скрипт должен выполнять следующие действия:

  1.  сгруппировывать события по дате;
  2.  выводить статистику событий в журнале, а именно:
  3.  количество событий от разных пользователей
  4.  количество событий в зависимости от типа события
  5.  количество событий по типу read;
  6.  удалять строки, содержащие определенную дату события, которая задается переменной в скрипте.

if [ $# -ne 1 ]; then

echo Usage: au.sh [ LOGFILE ]

exit 1

fi

days=$(sed 's/[\t].*//' $1 | sort | uniq)

for a in $days; do

echo \\n$a:\\n

sed -n '/'$a'/p' $1

done

echo \\nNumber\\tUsers\\tOperations\\n

sed 's/^[^\t]*[\t][^\t]*[\t]//g;s/[\t].*$//' $1 | sort | uniq -c

echo

sed 's/^[^\t]*[\t][^\t]*[\t]//g;s/[\t][//][^\t]*//' $1 | sort | uniq -c

echo \\nNumber\\tOperations\\n

sed 's/^[^\t]*[\t][^\t]*[\t][^\t]*[\t]//g;s/[\t][^\t]*//' $1 | sort | uniq -c

echo

echo Day of events you want to delete?

read day

echo

sed '/'$day'/d' $1

4) Используя редактор SED и скриптовый язык SHELL, разработать программу, которая осуществляет просмотр текущего каталога и выводит на экран его содержимое группами в порядке возрастания числа ссылок на файлы (в том числе, имена каталогов). Группа представляет собой объединение файлов с одинаковым числом ссылок на них.

ls -g | sed -n '/[^ ]*[ ]\([^ ]*\)/s//\1/p' | sort -n

echo

3.2. Ответы на контрольные вопросы

Что такое процесс и что такое файл?

Процессы являют собой динамическую сторону системы, это субъекты; а файлы - статическую, это объекты действия процессов. Процесс определяется как “программа в стадии исполнения”. Одна программа (как правило, с различными данными) может выполняться в разных процессах, с другой стороны для исполнения одной программы может потребоваться несколько процессов. Некоторые процессы (демоны) существуют в системе постоянно, другие уничтожаются после выполнения всех необходимых им операций. Почти весь интерфейс взаимодействия процессов с ОС и друг с другом выглядит как запись/чтение файлов.

Будет ли включена в исполняемый файл отладочная информация, если команды для создания объектных файлов из файлов на языке С не были явно определены?

Да, будет.

Как осуществить установку контрольных точек при отладке программ? 

Установка контрольной точки осуществляется посредством команды break. Например:

(gdb) break main.

4. Выводы

Shell – достаточно мощный командный интерпретатор, позволяющий писать простые скрипты для выполнения определённых заданий. Редактор sed позволяет значительно расширить возможности для обработки файлов в shell-скриптах путём использования регулярных выражений и достаточно широкого выбора команд редактирования.


 

А также другие работы, которые могут Вас заинтересовать

38379. Трудове право 298.5 KB
  Конституційні основи права на працю. Предметом правового регулювання такої галузі права як трудове є насамперед трудові відносини тобто суспільні відносини що виникають у процесі застосування людиною своїх здібностей у виконанні певної трудової функції. Предметом правового регулювання норм трудового права є також відносини що тісно пов'язані з трудовими. Трудове право окрема галузь права України яка регулює відносини що виникають у процесі реалізації особою права на працю.
38380. Римское частное право 650 KB
  Понятие предмет римского частного права. Римское государство являлось крупнейшим государством древности которое наряду с Древней Грецией оказало значительное влияние на формирование европейской цивилизации культуры и права. В основу деления публичного и частного заложены прежде всего те интересы которые защищаются нормами права. В сферу правового регулирования частного права входят право собственности обязательства договор семейные отношения наследственное право.
38381. РИМСКОЕ ПРАВО 847.5 KB
  Понятие и предмет римского права Периодизация римского права. Предмет римского права. Определение римского права.
38382. ПОЛІТОЛОГІЯ 689.5 KB
  Мета вивчення навчальної дисципліни “Політологія” - формування у студентів наукових уявлень, знань про світ політики, його основні феномени, закономірності, взаємозв’язки з іншими сферами суспільного життя. Разом з тим, навчальний курс зорієнтований на формування зрілої демократичної свідомості майбутніх фахівців з менеджменту ЗЕД, міжнародної економіки, міжнародного права, правознавства та ін.
38383. Основы социологии 381.5 KB
  Основные агенты социализации личности. Особенности концепции личности Фрейда. Понятие личности в социологической науке. Социолизация личности: сущность основные этапы.
38384. СТАТИСТИКА. Опорный конспект лекций 1.26 MB
  Сводка и группировка материалов статистического наблюдения. На первой стадии любого статистического исследования сбор первичных статистических данных происходит методом массового статистического наблюдения. Требованием массовости единиц наблюдения обуславливается тем что изучаемые статистикой закономерности в силу закона больших чисел проявляются в достаточно больших совокупностях в которых случайные отклонения от общей меры свойственные отдельным единицам взаимно погашаются. На второй стадии статистического исследования...
38385. Економіка праці та соціально-трудові відносини (в схемах, таблицях, рисунках) 6.48 MB
  Економіка праці та соціальнотрудові відносини. Від знання економічних законів функціонування ринку праці зайнятості організації оплати праці залежить ефективність використання ресурсів праці та успіх підприємця й рівень життя населення країни в цілому. Подальший розвиток техніки та технології обумовлює необхідність ефективного використання трудового потенціалу кожного працівника і суспільства в...
38387. ИНВЕСТИЦИОННЫЕ ПРОЕКТЫ 75.5 KB
  Основу прединвестиционной стадии цикла реального инвестирования составляет подготовка бизнесплана техникоэкономического обоснования инвестиционного проекта в котором в общепринятой последовательности разделов излагаются основные характеристики проекта и финансовые показатели связанные с его реализацией. В данной теме будет рассмотрено понятие инвестиционного проекта охарактеризованы его основные участники и особенности их деятельности дана классификация инвестиционных проектов по различным критериям и определены фазы и стадии...