otchet7
.docxМинистерство образования и науки Российской Федерации
ГБОУ ВПО
Тверской государственный технический университет
Кафедра ЭВМ
Отчёт
по лабораторной работе №7
на тему
“ Интерпретатор командного языка shell ”
по дисциплине
“Сетевые операционные системы”.
Выполнили: студенты
группы ВМКСС-0903
Григорьевская Т.Ю.
Лапшинов Д. А.
Приняла: Полтавцева М. А.
Тверь
2013
1. В качестве позиционного параметра задается файл, анализируется его размер. Если размер файла больше нуля, содержимое файла сортируется по первому столбцу по возрастанию, отсортированная информация помещается в другой файл, содержимое которого затем отображается на экране.
Программа:
#!/bin/sh
size=`stat -c %s $1`
echo размер файла = $size
if [ $size -gt 0 ]
then
sort $1 > $2
more $2
else
echo Пустой файл!
Fi
Результат запуска:
buba@buba-desktop:~/lr7$ sh 1 3 2
размер файла = 0
Пустой файл!
buba@buba-desktop:~/lr7$ sh 1 2 3
размер файла = 75
строка 1
строка 2
строка 3
строка 4
строка 5
2. Командой TAR осуществляется сборка всех текстовых файлов текущего каталога в один архивный файл my.tar, после паузы просматривается содержимое файла my.tar, затем командой GZIP архивный файл my.tar сжимается
Вот некоторые опции, используемые с командой tar:
-c — создать новый архив
-f — в сочетании с опцией -c используется для создания файла tar из указанного файла
-t — показать список файлов в файле tar
Программа:
#!/bin/sh
tar -cf my.tar *.txt
sleep 2s
tar -tf my.tar
sleep 2s
gzip my.tar
Результат запуска:
buba@buba-desktop:~/lr7$ ls
1 2-1 (3rd copy).txt 2-1.txt
1~ 2-1 (4th copy).txt
2 2-1 (another copy).txt
2~ 2-1 (copy).txt
buba@buba-desktop:~/lr7$ sh 2
2-1 (3rd copy).txt
2-1 (4th copy).txt
2-1 (another copy).txt
2-1 (copy).txt
2-1.txt
buba@buba-desktop:~/lr7$ ls
1 2-1 (3rd copy).txt 2-1.txt
1~ 2-1 (4th copy).txt my.tar.gz
2 2-1 (another copy).txt
2~ 2-1 (copy).txt
buba@buba-desktop:~/lr7$
3. Написать скрипт с использованием функции, например, функции, суммирующей значения двух переменных.
Программа:
#!/bin/sh
mult()
{
res=`expr $1 '*' $2`
return $res
}
mult $1 $2
echo $res
Результат запуска:
buba@buba-desktop:~/lr7$ sh 3 4 5
20
buba@buba-desktop:~/lr7$