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


 

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

32506. МЕТОДИКА ИЗУЧЕНИЯ СОДЕРЖАТЕЛЬНОЙ ЛИНИИ: «ИНФОРМАЦИЯ И ИНФОРМАЦИОННЫЕ ПРОЦЕССЫ». 83 KB
  Ключевыми вопросами данной содержательной линии являются: определение информации; измерение информации; хранение информации; передача информации; обработка информации. Проблемы определения и измерения информации Нельзя дать единого универсального определения информации. Но в науке и в практике известны различные подходы к информации и в рамках каждого из них дается определение этого понятия Субъективный подход. При раскрытии понятия информация с точки зрения субъективного бытового человеческого подхода следует отталкиваться...
32507. МЕТОДИКА ИЗУЧЕНИЯ СОДЕРЖАТЕЛЬНОЙ ЛИНИИ: «АРИФМЕТИЧЕСКИЕ ОСНОВЫ КОМПЬЮТЕРА» 63.5 KB
  Система счисления это определенный способ представления чисел и соответствующие ему правила действия над числами. Римский способ записи чисел является примером непозиционной системы счисления а арабский это позиционная система счисления. Позиционных систем счисления существует множество и отличаются они друг от друга алфавитом множеством используемых цифр. Размер алфавита число цифр называется основанием системы счисления.
32508. МЕТОДИКА ИЗУЧЕНИЯ СОДЕРЖАТЕЛЬНОЙ ЛИНИИ: «КОМПЬЮТЕР» 142 KB
  Одна из содержательных линий базового курса информатики линия компьютера. Линия компьютера проходит через весь курс и по двум целевым направлениям: 1 теоретическое изучение устройства принципов функционирования и организации данных в ЭВМ; 2 практическое освоение компьютера; получение навыков применения компьютера для выполнения различных видов работы с информацией. Представление данных в компьютере Информация хранимая в памяти компьютера и предназначенная для обработки называется данными. Для представления всех видов данных в памяти...
32509. МЕТОДИКА ВВЕДЕНИЯ ПОНЯТИЯ АЛГОРИТМИЗАЦИЯ С ПОМОЩЬЮ УЧЕБНЫХ ИСПОЛНИТЕЛЕЙ 134.5 KB
  Основной характеристикой исполнителя с точки зрения управления является система команд исполнителя СКИ. Схема функционирования исполнителя алгоритмов Для выполнения всякой работы решения поставленной задачи исполнитель на входе получает алгоритм и исходные данные а на выходе получаются требуемые результаты. Всякая команда должна быть сформулирована так чтобы определить однозначное действие исполнителя. Работа исполнителя состоит в последовательном выполнении команд алгоритма.
32510. МЕТОДИКА ИЗУЧЕНИЯ СОДЕРЖАТЕЛЬНОЙ ЛИНИИ: «ФОРМАЛИЗАЦИЯ И МОДЕЛИРОВАНИЕ» 80 KB
  Теория и методика обучения информатики МЕТОДИКА ИЗУЧЕНИЯ СОДЕРЖАТЕЛЬНОЙ ЛИНИИ: ФОРМАЛИЗАЦИЯ И МОДЕЛИРОВАНИЕ. Линия моделирования наряду с линией информации и информационных процессов является теоретической основой базового курса информатики. Тема натуральных моделей затрагивается лишь в самом начале в определением понятия модели и разделением моделей на материальные натурные и информационные. Важнейшим понятием в моделировании является понятие цели.
32511. МЕТОДИКА ИЗУЧЕНИЯ СОДЕРЖАТЕЛЬНОЙ ЛИНИИ: «ЛОКАЛЬНЫЕ И ГЛОБАЛЬНЫЕ КОМПЬЮТЕРНЫЕ СЕТИ. ИНТЕРНЕТ» 81.5 KB
  Теория и методика обучения информатики МЕТОДИКА ИЗУЧЕНИЯ СОДЕРЖАТЕЛЬНОЙ ЛИНИИ: ЛОКАЛЬНЫЕ И ГЛОБАЛЬНЫЕ КОМПЬЮТЕРНЫЕ СЕТИ. Содержание данного подраздела делится на две части по принципу деления компьютерных сетей на два типа: локальные сети; глобальные сети. Локальные сети. Локальные сети в зависимости от назначения и технических решений могут иметь различные структуры объединения компьютеров.
32512. ДИСТАНЦИОННЫЕ ОЛИМПИАДЫ ПО ИНФОРМАТИКЕ 145.5 KB
  Избранные вопросы методики преподавания информатики ДИСТАНЦИОННЫЕ ОЛИМПИАДЫ ПО ИНФОРМАТИКЕ Дистанционные олимпиады по информатике этапы их проведения. Целью проведения компьютерной дистанционной олимпиады по какомулибо предмету школьной подготовки является улучшение преподавания этого предмета. Это улучшение достигается благодаря стимулирование интереса к изучаемому предмету с помощью Интернеттехнологий и использования сравнительного аспекта обучения; внедрение в учебную практику новых и эффективных методов обучения; методической...
32513. ГОРОДСКИЕ ОЛИМПИАДЫ И ПОДГОТОВКА К НИМ 388 KB
  Избранные вопросы методики преподавания информатики ГОРОДСКИЕ ОЛИМПИАДЫ И ПОДГОТОВКА К НИМ Олимпиадная информатика . Олимпиады это тот срез в образовании который проверяет не только владение предметом но и формирует тенденции развития этого предмета определяет требования к школе через этот предмет со стороны общества то есть то что называют социальным запросом. Школьные олимпиады по информатике как по содержанию так и по методике проведения можно считать сформировавшимся явлениям. Олимпиады по информатике Олимпиады...
32514. ШКОЛЬНЫЙ САЙТ 1.04 MB
  Избранные вопросы методики преподавания информатики ШКОЛЬНЫЙ САЙТ Назначение и примерная структура школьного сайта На сайте Школьный сайт http: www. Информационное сопровождение сайта создание рубрик и наполнение их актуальной достоверной информацией должно производиться редакцией в состав которой должны входить как преподаватели так и учащиеся. Группы пользователей регистрация и авторизация Администрирование и информационное сопровождение сайта должно проводиться уполномоченными пользователями администраторами редакторами.; при...