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


 

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

37180. Возникновение бюджета 30 KB
  По экономической сущности государственный бюджет это денежные отношения возникающие у государства с юридическими и физическими лицами по поводу распределения национального дохода в связи с образованием и использованием бюджетного фонда предназначенного для финансирования экономики социальнокультурных мероприятий нужд обороны и государственного управления. Благодаря ей можно прогнозировать социальноэкономические последствия бюджетной политики. Бюджет играет важную экономическую социальную и политическую роль в воспроизводственном...
37181. Бюджетное устройство 90.5 KB
  Бюджетная система унитарного государства состоит из двух звеньев – государственного и местных бюджетов. Бюджетная система федеративных госуда рств тр ехзвенная и состоит из федеративного федерального бюджета бюджетов членов субъектов федерации и местных бюджетов. Бюджетный кодекс РФ далее БК РФ даёт следующее определение бюджетной системы: Основанная на экономических отношениях и государственном устройстве РФ регулируемая нормами права совокупность федерального бюджета бюджетов субъектов РФ местных бюджетов и бюджетов государственных...
37182. Право регулирования денежного обращение страны 92.5 KB
  Главными задачами правового регулирования денежного обращения в России являются: обеспечение четкого разделения правовых полномочий и ответственности в сфере денежного обращения между Президентом РФ законодательной и исполнительной властями; поддержание необходимого темпа роста денежной массы в обращении и правильного соотношения между наличным и безналичным денежным обращением с целью стабильного и эффективного функционирования экономики страны; обеспечение законодательной и исполнительной власти правовыми нормами и инструментами...
37183. Денежно – кредитная политика 86 KB
  Согласно комментариям к федеральному закону О Центральном банке Российской Федерации Банка России денежно – кредитная политика определяется как основная часть единой государственной экономической политики проявляющаяся в воздействии на количество денег в обращении с целью достижения стабильности цен обеспечения максимально возможной занятости населения а также роста реального объёма производства. В отличие от первого определения второе подчёркивает возможность влияния денежно – кредитной политики не только на сферу обращения но и...
37184. Современные коммерческие банки 34.5 KB
  Коммерческие банки выступают основным звеном банковской системы. Независимо от формы собственности коммерческие банки являются самостоятельными субъектами экономики. Таким образом коммерческие банки осуществляют должны осуществлять комплексное обслуживание клиентов что отличает их от специальных кредитных организаций небанковского типа выполняющих ограниченный круг финансовых операций и услуг.
37185. Денежная система 44.5 KB
  В зависимости от вида денег деньги как товар выполняющий роль всеобщего эквивалента или деньги как знак стоимости различают денежные системы двух типов:1 система металлического обращения которая базируется на действительных деньгах серебро золото выполняющих все пять функций а образующиеся банкноты беспрепятственно обмениваются на действительные деньги;2 система бумажнокредитного обращения при которой действительные деньги вытесняются знаками стоимости а в обращении находятся бумажные казначейские векселя либо кредитные...
37186. Эми́ссия денег 33.5 KB
  Граница кредита предел допустимая форма. Норма выдачи кредита. Это граница ресурсов кредита т. Границы ресурсов кредита определяются размерами ссуд фонда.
37187. Денежная масса 93.5 KB
  Вместе с тем денежная масса включает в себя такие компоненты которые нельзя непосредственно использовать как покупательное или платежное средство. Как правило денежная политика страны выходящей из политического или экономического кризиса начинается с восстановления доверия населения путем индексации таких “замороженных вкладов†и привлечения таким образом средств для оживления инвестиционной активности в экономике. Чаще всего используют следующие агрегаты[1]: М0 = наличные деньги в обращении М1 = М0 чеки вклады до востребования...
37188. Инфляция и причины ее возникновения 35.5 KB
  Инфляция связана с “заболеванием†денег но причины инфляции очень глубинные. Инфляция – это обесценение денег всвязи с нарушением закона денежного обращения. инфляция – вздутие т.