Книга: PyNEng
Назад: Дополнительные материалы
Дальше: 8. Примеры использования основ

Задания

Задания

Все задания и вспомогательные файлы можно скачать в . Если в заданиях раздела есть задания с буквами (например, 5.2a), то лучше выполнить сначала задания без букв, а затем с буквами. Задания с буквами, как правило, немного сложнее заданий без букв и развивают или усложняют идею в соответствующем задании без буквы.

Например, в разделе есть задания 5.1, 5.2, 5.2a, 5.2b, 5.3, 5.3a. Сначала лучше выполнить задания 5.1, 5.2, 5.3, а затем 5.2a, 5.2b, 5.3a

Если задания с буквами получается сделать сразу, лучше делать их по порядку.

Задание 7.1

Аналогично заданию 4.6 обработать строки из файла ospf.txt и вывести информацию по каждой в таком виде:

Protocol:              OSPF Prefix:                10.0.24.0/24 AD/Metric:             110/41 Next-Hop:              10.0.13.3 Last update:           3d18h Outbound Interface:    FastEthernet0/0 

Ограничение: Все задания надо выполнять используя только пройденные темы.

Задание 7.2

Создать скрипт, который будет обрабатывать конфигурационный файл config_sw1.txt:

  • имя файла передается как аргумент скрипту

Скрипт должен возвращать на стандартный поток вывода команды из переданного конфигурационного файла, исключая строки, которые начинаются с '!'.

Между строками не должно быть дополнительного символа перевода строки.

Ограничение: Все задания надо выполнять используя только пройденные темы.

Задание 7.2a

Сделать копию скрипта задания 7.2.

Дополнить скрипт:

  • Скрипт не должен выводить команды, в которых содержатся слова, которые указаны в списке ignore.

Ограничение: Все задания надо выполнять используя только пройденные темы.

ignore = ['duplex', 'alias', 'Current configuration'] 

Задание 7.2b

Дополнить скрипт из задания 7.2a:

  • вместо вывода на стандартный поток вывода, скрипт должен записать полученные строки в файл config_sw1_cleared.txt

При этом, должны быть отфильтрованы строки, которые содержатся в списке ignore.

Строки, которые начинаются на '!' отфильтровывать не нужно.

Ограничение: Все задания надо выполнять используя только пройденные темы.

ignore = ['duplex', 'alias', 'Current configuration'] 

Задание 7.2c

Переделать скрипт из задания 7.2b:

  • передавать как аргументы скрипту:
    • имя исходного файла конфигурации
    • имя итогового файла конфигурации

Внутри, скрипт должен отфильтровать те строки, в исходном файле конфигурации, в которых содержатся слова из списка ignore. И затем записать оставшиеся строки в итоговый файл.

Проверить работу скрипта на примере файла config_sw1.txt.

Ограничение: Все задания надо выполнять используя только пройденные темы.

ignore = ['duplex', 'alias', 'Current configuration'] 

Задание 7.3

Скрипт должен обрабатывать записи в файле CAM_table.txt таким образом чтобы:

  • считывались только строки, в которых указаны MAC-адреса
  • каждая строка, где есть MAC-адрес, должна обрабатываться таким образом, чтобы на стандартный поток вывода была выведена таблица вида:
 100    01bb.c580.7000   Gi0/1  200    0a4b.c380.7010   Gi0/2  300    a2ab.c5a0.2000   Gi0/3  100    0a1b.1c80.7300   Gi0/4  500    02b1.3c80.7000   Gi0/5  200    1a4b.c580.5000   Gi0/6  300    0a1b.5c80.9010   Gi0/7 

Ограничение: Все задания надо выполнять используя только пройденные темы.

Задание 7.3a

Сделать копию скрипта задания 7.3

Дополнить скрипт:

  • Отсортировать вывод по номеру VLAN

Ограничение: Все задания надо выполнять используя только пройденные темы.

Задание 7.3b

Сделать копию скрипта задания 7.3a

Дополнить скрипт:

  • Запросить у пользователя ввод номера VLAN.
  • Выводить информацию только по указанному VLAN.

Ограничение: Все задания надо выполнять используя только пройденные темы.

Назад: Дополнительные материалы
Дальше: 8. Примеры использования основ