СуперЭВМ_лаб_работа_03_04 (1061929), страница 3
Текст из файла (страница 3)
chmod +x script1.sh
sh script1.sh
Работа с параметрами в скриптах.
Используя редактор oedit создать скрипт выводящий содержимое указанного каталога, или содержимое домашнего каталога, если накакой другой каталог не указан. После этого – сохранить и запустить скрипт.
Пример скрипта:
#!/bin/sh
if test –z “$1”
then dir=$HOME
else dir=$1
fi
ls -l dir
Первая строка этого скрипта указывает на необходимый ему интерпретатор sh и позволяет запускать скрипт по его имени.
script2.sh
Обработка текста.
Объединение нескольких текстовых файлов.
Для объединения нескольких текстовых файлов можно использовать команду cat и перенаправив её вывод в файл результата. Используя cat, объедините созданные ранее файлы скриптов в один и запустите его.
Пример:
cat script2.sh script1.sh > script_sum.sh
chmod +x script_sum.sh
sh script_sum.sh
AWK.
Создать два текстовых файла используя редактор oedit.
Содержимое файла students
Jim Shaw student 11.10.87 5 football
Mike Shaw student 12.09.86 6 football
John Brook lecturer 12.09.86 3 swimming
Bryan Talbot lecturer 05.09.86 10 basketball
Nick Fell student 04.07.75 5 swimming
Nick Fost student 03.08.87 5 swimming
Ann Brown student 03.08.87 6 swimming
Jane Rodd student 08.04.79 2 volley-ball
Содержимое файла cars
BMW : Paul : Brown : 12389
BMW : Jane : Tod : 34567
Chrysler : Mike : Bell : 67890
Chevrolet : Ben : Walsh : 45634
Используя программу AWK получить первое поле каждой записи файла sport.
awk ' {print $1}' sport
Введите awk команду, которая выводит все поля для всех записей, у которых первое поле равно “Jim”.
awk '$1 == "Jim" {print}' sport
Введите awk команду, которая выводит первое и последнее поле для всех записей, с первым полем “Jim”.
awk '$1 == "Jim" {print $1,$6}' sport
Напишите программу, которая выполняет следующие действия: использует символ (:) в качестве разделителя полей входного файла и выводит первое и второе поля, разделенные символом (:), затем выводит третье и четвертое поля, разделенные символом (,). В качестве входного файла укажите cars. Запустите программу.
Программа:
BEGIN {FS = ":"}
{print $1 FS $2 ", " $3 ", " $4}
Команда:
awk -f awk4 cars
Напишите awk программу awk5, которая выполняет следующие действия: использует символ (:) в качестве разделителя полей входного файла, считывает все записи, содержащие заглавную букву С и выводит эти строки без последнего поля.
Программа:
BEGIN {FS = ":"}
/C/ {print $1 ":" $2 ":" $3}
Команда:
awk -f awk5 cars.lst
Напишите awk команду awk6, которая выполняет следующие действия:
-
Использует символ (:) в качестве разделителя полей входного файла.
-
Считывает все записи, содержащие заглавную букву С.
-
Выводит эти записи.
-
Подсчитывает сумму по последним полям выведенных строк.
-
Выводит результат суммирования.
Программа:
BEGIN {FS = ":"
total = _}
/C/
{amount = substr($4,2)
total = total + amount
print $_}
END {print "The total is $"total}
Команда:
awk -f awk6 cars.lst
Создайте новый подкаталог и назовите его bin. Скопируйте в него все созданные shell скрипты.
Отредактируйте файл .profile и добавьте в него следующие строки.
export PATH=”~/bin:$PATH”
Проверьте возможность запуска скрипта просто указав его имя.
Контрольные вопросы
-
Чем отличается рабочий каталог от домашнего каталога?
-
Как называется родительский каталог домашнего каталога?
-
Как называется корневой каталог?
-
Можно создать два каталога одной командой?
-
Как вывести содержимое нескольких файлов так, чтобы их содержимое последовательно выводилось на экран?
-
Как определить размер файла?
-
Что делает команда touch?
-
Является ли жесткая ссылка файлом?
-
Кто создает файл .sh history?
-
Каким образом используются переменные среды?
-
Сколько ID процессов создается при выполнении конвейера команд?
-
Какой файл хранит параметры интерфейса пользовательской консоли?
-
Как узнать размер свободного пространства в смонтированной файловой системе?
-
Что такое shell скрипт?
-
Какой командой можно вывести произвольную текстовую строку?
-
Что такое Awk и для чего он используется?
-
Из каких частей состоит Awk программа?
-
С какими типами файлов работает Awk программа?
-
Как запустить Awk программу?
Литература
-
Архитектура и технологии IBM@server zSeries. В.А. Варфоломеев, Э.К. Лекий, М.И.Шамров.М.: Интернет-Университет Информационных технологий.2005г.
-
Введение в современные мэйфреймы: основы z/OS.Майк Эбберс, Уэйн О’Брайн, Билл Огден. М.: Корпорация IBM, 2007г.
-
Информационная управляющая система МГТУ им. Н.Э.Баумана «Электронный Университет»: Концепция и реализация / С.А.Тоноян, А.В.Балдин, В.М.Чернинький,. М.: Издательство МГТУ им. Н.Э.Баумана, 2009г.
-
Д.Л.Осипов. Базы данных и Delphi. Теория и практика. БХВ -Петербург, 2011 ISBN 978-5-9775-0659-5; 2011 г.
-
Gabriel F. Garqulio. z/OSREXX with OS/2, TSO, & CMS Features Quick Reference Guide ISBN 978-6-1309-5285-3. 2010г./
-
Sue Sloan, Ann Kilty Hernandez, Susan Graziano Sloan,.DB2 Universal Database for OS/390. М:2008г.
-
Галямова Е.В. Большие вычислительные машины и их место в современном мире// Межвузовский сборник научных трудов,. М.: МИРЭА . 2006.
-
.Сьюзен Виссер, Билл Вонг Освой самостоятельно DB2 Universal Database. М.: 2004г.
-
Учебные и методические материалы по суперЭВМ zSeries.
http://www.ibm.com/