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-скриптах путём использования регулярных выражений и достаточно широкого выбора команд редактирования.


 

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

83556. Види і зміст міжнародно-правової відповідальності 42.93 KB
  Політична відповідальність як правило супроводжується застосуванням у відношенні державипорушниці примусових заходів і сполучається з матеріальною відповідальністю. Сатисфакція задоволення як форма політичної відповідальності припускає обов\'язок державиправопорушниці надати задоволення не матеріального характеру відшкодувати моральну шкоду заподіяну честі і гідності іншої держави. Сатисфакція може виявитися в таких діях державиделіквента винного суб\'єкта що зобов\'язаний відшкодувати шкоду заподіяну правопорушенням: офіційне...
83557. Політична відповідальність і її форми 38.62 KB
  Політична відповідальність як правило супроводжується застосуванням у відношенні державипорушниці примусових заходів і сполучається з матеріальною відповідальністю. Сатисфакція задоволення як форма політичної відповідальності припускає обов\'язок державиправопорушниці надати задоволення не матеріального характеру відшкодувати моральну шкоду заподіяну честі і гідності іншої держави. Сатисфакція може виявитися в таких діях державиделіквента винного суб\'єкта що зобов\'язаний відшкодувати шкоду заподіяну правопорушенням: офіційне...
83558. Матеріальна відповідальність і її форми 37.01 KB
  Історично свій початок репарації беруть від інституту контрибуцій що успішно існували в міжнародному граві з глибокої давнини і до кінця XIX сторіччя і носили характер данини. З метою обмеження таких негативних явищ були розроблені статті 4751 Гаазької конвенції про закони і звичаї сухопутної війни 1907 року що обмежували стягнення контрибуцій. При розробці Версальского мирного договору 1919 року країни Антанти були змушені формально відмовитися від контрибуцій замінивши їх репараціями. Фактично на зміну контрибуцій прийшли усі форми...
83559. Санкції і контрзаходи 36.06 KB
  Останнім часом склалася усталена практика щодо застосування термінології: примусові заходи з боку держав позначаються терміном контрзаходи а примусові заходи збоку МО санкціями . Контрзаходи повинні бути співрозмірними спричиненій шкоді й ураховувати тяжкість МПД та права які були порушені тобто бути пропорційними. Контрзаходи припиняються як тільки контрагент виконає свої зобов\'язання.
83560. Міжнародна відповідальність за шкідливі наслідки дій, не заборонених міжнародним правом 38.27 KB
  До першої відносять конвенції про цивільну відповідальність в яких розглядають питання відповідальності оператора а в деяких випадках відповідальності держави з позиції матеріальних та процесуальних норм. Такі договори стосуються питань навігації нафти ядерних матеріалів: Міжнародна конвенція про цивільну відповідальність за шкоду від забруднення нафтою 1969 р. до неї Конвенція про цивільну відповідальність за шкоду спричинену при перевезенні небезпечних вантажів автомобільним залізничним та внутрішнім водним транспортом 1989 р.
83561. Поняття та джерела міжнародного кримінального права 36.45 KB
  В літературі зустрічаються різні концепції міжнародного кримінального права. Лукашук визначав міжнародне кримінальне право як галузь міжнародного публічного права принципи і норми якої регулюють співпрацю держав і міжнародних організацій в боротьбі зі злочинністю. При будьякому підході слід відмітити головну особливість міжнародного кримінального права а саме встановлення прямої кримінальної відповідальності фізичних осіб за порушення найбільш важливих норм міжнародного права.
83562. Відповідальність фізичних осіб за міжнародним кримінальним правом 37.97 KB
  Такі злочини прямо пов’язані з міжнароднопротиправними діяннями держав. До них відносяться злочини проти миру і безпеки людства. За злочини проти миру і безпеки людства міжнародні злочини фізичні особи можуть бути притягнені до відповідальності міжнародним трибуналом або судом держави. На відміну від міжнародних злочинів злочини міжнародного характеру це протиправні діяння які зазіхають на міжнародні відносини міжнародний правопорядок тобто зачіпають інтереси декількох держав але вчиняються індивідами поза зв’язком з політикою якої...
83563. Міжнародні кримінальні суди: міжнародні кримінальні трибунали ad hoc і постійний Міжнародний суд 37.84 KB
  До юрисдикції трибуналу відносилися злочини проти миру військові злочини і злочини проти людяності. і додатках до них а також геноцид і злочини проти людяності. У Статуті трибуналу по Руанді йшлося про злочини проти людяності а також про порушення норм що стосується конфліктів неміжнародного характеру як вони відображені в Женевських конвенціях 1949 р. Міжнародного кримінального суду як постійного органу що має юрисдикцією відносно осіб відповідальних за найсерйозніші злочини які викликають заклопотаність міжнародного співтовариства.
83564. Міжнародна співпраця в боротьбі із злочинністю 36.13 KB
  Важливою формою міжнародної співпраці в боротьбі із злочинністю є надання правової допомоги в кримінальних справах. Правовою основою такої співпраці є багатосторонні конвенції наприклад Європейська Конвенція про взаємну правову допомогу в кримінальних справах 1959 р. і двосторонні міжнародні договори наприклад Договір між Україною та Сполученими...