Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Практическая (лабораторная) работа 3.



    1. Посмотреть справку по команде subst.
    2. Создать виртуальный диск q:, сопоставив ему каталог c: \windows
    3. Перейти на виртуальный диск и исследовать его содержимое

Для манипулирования атрибутами файлов и каталогов используется команда attrib.

Практическая (лабораторная) работа 4.

    1. Посмотреть справку по команде attrib.
    2. Скопировать себе в домашний каталог несколько любых текстовых файлов.
    3. С помощью команды attrib установить им атрибут " на чтение".

С помощью команды dir просмотреть все файлы с данным атрибутом.

 

РЕШЕНИЕ:

 

Практическая (лабораторная) работа 1.

1.

Prompt /?

2.

echo %DATE%

или

echo %DATE% %TIME%

3.

prompt $D$S$T$S$P$G

4.

Color fc

Color 0a

Color

5.

Ver

 

Практическая (лабораторная) работа 2.

1.

dir c: \Windows | find " байт "

2.

dir c: \Windows | find " папок "

3.

dir c: \Windows\.bmp | find " файлов"

 

Практическая (лабораторная) работа 3.

1.

Subst /?

2.

subst q: c: \Windows

3.

Q:

Dir

 

Практическая (лабораторная) работа 4.

1.

Attrib /?

2.

c: \ Windows\*. txt c: \ mydir

3.

attrib +R c: \mydir\*.txt

4.

dir /AR c: \mydir

 

Тема 6. Характеристики популярных операционных систем и перспективы развития ОС

Практическая (лабораторная) работа 10 - 11. Элементы программирования в BASH. Файлы сценариев

Файлы сценариев

Если последовательность команд awk слишком велика, чтобы вводить ее в командной строке, или предназначена для многократного использования, целесообразно поместить ее в отдельный файл сценария. Преимуществом сценариев является также возможность добавления комментариев, благодаря которым вы сможете быстро вспомнить назначение той или иной программы.

1. Создайте файл с именем popular.txt, содержащий информацию о наиболее популярных программах — сведения взяты из Internet в апреле 2003 года. Структура записей этого файла такова:

1-й столбец — наименование программы;

2-й столбец — автор;

3-й столбец — дата регистрации в Internet;

4-й столбец — размер программы в Кб;

5-й столбец — на каких платформах может работать;

6-й столбец — общее количество уникальных скачиваний за 30 дней;

7-й столбец — общее количество уникальных скачиваний за неделю.

$./cat > popular.txt

VB_Help#A.Ovchinnikov#07.07.2002#5200#Win_95/98#1852#341

DBF-SQL_Expert#I.Karelin#11.04.2003#1348#Win_98/ME/2000/XP#293#27

C_Functions_Help#D.Trineev#01.03.2002#940#Win_95/98/NT#116#17

FAQ_for_Delphi#U.Gorohov#24.03.2003#49#Multi_Platform#967#61

My_client_2.0#R.Kovrigin#17.03.2003#1000#Win_3.1/95/98/NT#353#39

Rus_WinAPI_Help#S.Vorobyev#20.02.2003#475#Multi_Platform#569#63

Neural_Base#Lab._Base_Group#01.02.2001#99#Win_3.1/95/98/NT#279#27

< Ctrl+D>

Разделителем полей является символ ‘#’.

2. Создайте файл scen_1.awk. Расширение awk является общепринятым соглашением относительно именования файлов сценариев awk. Вот текст этого файла:

#! ./awk -f

# Имя файла: scen_1.awk

# Все строки комментариев должны начинаться с символа ‘#’

# Командная строка: scen_1.awk popular.txt

# Вычисление суммарного количества уникальных скачиваний за неделю

# Сначала выводим заголовок

BEGIN {

FS=“#”

print “\nName program copy\n-------------------------”}

{printf “%-20s %d\n”, $1, $7}

# Суммируем количество уникальных скачиваний за неделю

{tot+=$7}

# В завершение выводим суммарное скачивание за неделю

END {print “\nsumma copy: ” tot}

Ключевым моментом сценария является первая строка, выглядящая как комментарий:

#! ./awk -f

На самом деле это своеобразная системная инструкция, указывающая, какая программа должна выполнять данный сценарий. Подобная инструкция должна быть первой строкой любого сценария. Общий ее формат таков:

#! /путь/программа [командная_строка]

Выражение #! называется “магической” последовательностью. Подразумевается, что, во-первых, система, в которой запускается сценарий, распознает эту последовательность, а, во-вторых, указанная программа воспринимает символ ‘#’ как признак комментария.

Когда происходит запуск исполняемого файла, система проверяет, начинается ли он с “магической” последовательности. Если нет, значит, файл содержит машинные коды и выполняется непосредственно. Если же обнаружено выражение #!, то это файл сценария. В таком случае происходит следующее:

1. Первая строка сценария заменяет собой командную строку, из нее удаляется “магическая” последовательность;

2. Предыдущая командная строка передается новой командной строке в качестве аргумента.

В нашем случае это означает, что при запуске сценария вместо команды:

$ scen_1.awk popular.txt

в действительности выполняется такая команда:

$./awk -f scen_1.awk popular.txt

Опция -f утилиты awk говорит о том, что выполняемые команды находятся в указанном вслед за ней файле.

3. После создания файл scen_1.awk необходимо сделать исполняемым с помощью команды

$./chmod u+x scen_1.awk

1. С помощью следующих команд можно проверить стал ли файл scen_1.awk выполняемым:

$ [ -x scen_1.awk ]

$./echo $?

0

Первая из этих команд проверяет, является ли файл выполняемым. Пробелы после открывающей скобки и перед закрывающей скобкой обязательны. Вторая возвращает код завершения первой команды. Возвращаемое нулевое значение свидетельствует о том, что условие выполняется, любое другое значение говорит о наличии ошибки.

2. Выполните сценарий:

$./scen_1.awk popular.txt

Обратите внимание на то, что разделитель полей задан с помощью встроенной переменной FS. В сценарии используется команда printf (форматного вывода). При выводе строковые данные выровнены по левому краю — ширина поля 20 символов, во втором поле выводятся целые числа.

Выражение tot+=$7 заключено в фигурные скобки. Попробуйте убрать в сценарии фигурные скобки.

1. Следующий сценарий scen_2.awk выводит информацию о программах имеющих количество уникальных скачиваний за 30 дней больше заданного в командной строке:

#! ./awk -f

# Имя файла: scen_2.awk

# Командная строка: scen_2.awk KOL=n popular.txt

# Вывод информации о программах имеющих количество уникальных

# считываний за 30 дней больше заданного

BEGIN {FS=“#”}

{if($6 > KOL) print $0}

1. Сделайте сценарий выполняемым и выполните его с параметром равным 500.

$./chmod u+x scen_2.awk

$./scen_2.awk KOL=500 popular.txt


Поделиться:



Последнее изменение этой страницы: 2019-03-30; Просмотров: 329; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.026 с.)
Главная | Случайная страница | Обратная связь