- •2012 Г. Оглавление
- •Лабораторная работа №1.
- •Лабораторная работа №2-3.
- •Лабораторная работа №4.
- •Лабораторная работа №5.
- •Лабораторная работа № 6.
- •Лабораторная работа № 7.
- •Лабораторная работа № 8.
- •Лабораторная работа № 9.
- •Эссе на тему «Виртуальные машины».
- •VMware Workstation 6
- •VMware Workstation 7
- •VirtualBox
Лабораторная работа № 8.
Тема: написание сценариев.
Цель: ознакомиться с работой условных операторов и специальными параметрами.
Ход работы:
Проанализировать файл /home/labs/back.sh
Вподкаталогеbin создать файл case.sh:
Выполнить команду export UID
dg@dg-VirtualBox:~$ export UID
Запустить сценарий без аргументов и последовательно с аргументамиstatus, start, status, start, stop, status, stop. Результат сохранить в файле отчета.
В подкаталоге bin создать файл calc.sh
6. Запустить сценарий следующими командами:
calc.sh 1 + 2 \* 3 + 3 / 4
calc.sh 1 + 2 \* 3
calc.sh 1 + 2\*3
calc.sh 1+2
Объяснить почему различается результат в случаях b) и c).
Разные формулы. В случае b) сумма (1 + 2) умножается на 3, а в случае c) к 1 прибавляется произведение 2 и 3.
Исправить сценарий так, чтобы в случае d) он выдавал результат 3.
Написать сценарий summ.sh выводящий сумму своих аргументов если первый аргумент +, произведение если первый аргумент и сообщение Usage: summ.sh +|* arguments ... в противном случае.
Лабораторная работа № 9.
Тема: базовые регулярные выражения. Редактор sed.
Цель: ознакомиться с регулярными выражениями и редактором sed.
Ход работы:
Скопировать в домашний каталог файл /home/labs/text.txt
dg@dg-VirtualBox:~$ cp /home/labs/text.txt/home
Вывести в файл отчета все строки файлаtext.txt содержащие слово "Благозвон". Добавить к файлу отчета количество найденных строк.
Добавить к файлу отчета все строки файлаtext.txt, которые начинаются с буквы "Б" (возможно после нескольких пробелов).
Добавить к файлу отчета все непустые строки файлаtext.txt, не содержащие русскую букву "а" (в любом регистре).
Добавить в файл отчета имена файлов каталога /home/labs, которые содержат слово "include".
dg@dg-VirtualBox:~$ find/home/labs –name include* -type f>>lab9.txt
Используя редакторsed заменить в файле text.txt все слова Снарк на СНАРК. Результат сохранить в файле snark.txt.
dg@dg-VirtualBox:~$ sed –e ‘s/Снарк/СНАРК/g’ text.txt>snark.txt
При помощиsed вывести из файла /etc/passwd идентификаторы пользователей и их имена, разделенные символом табуляции, в формате:
dg
daemon
operator ...
Вывод должен быть отсортирован по идентификатору пользователя. Результат добавьте к файлу отчета.
dg@dg-VirtualBox:~$ cat/etc/passwd |
sed s/:x:/” “/|
sed s/:[0-9]*.*//|
sed s/.*& &/ |
sed s/”[a-z]*”//|
sed s/”[0-9]*$”// |
sort –g>>lab9.txt
9. Написать сценарий для sed, который будет менять местами каждые две строки файла. Возможно sed прийдется запускать с ключом -n.
Если Вам не удалось выполнить предыдущее задание, обратите внимание на файл /home/labs/rev.sed.
Написать сценарий для редактора sed, который будет добавлять:
В начало файла строку "<html><body>".
В начало всех строк начинающихся словом "Приступ" строку "<H2>", а в конец строку "</H2>".
В конец всех остальных строк "<br>".
К концу последней строки "</body></html>"
Результат работы сценария сохранить в файле snark.html в каталоге public_html домашнего каталога (каталог потребуется создать). Сценарий сохранить под именем sed1 в домашнем каталоге.
Создаем файл l1.sed:
Li\<html><body>
/^The/i\<H2>
/^The/a\<H2>
$a \</body></html>
$!a \<br>
Запускаем сценарий через терминал:
dg@dg-VirtualBox:~$ sed –f l1.sed text.txt>>public_html/text.htm