Огляд скриптовых мов - Python
Приклади збереження даних Приклади збереження данихУ порівнянні з pickle або YAML для ініціалізації роботи з ZODB потрібно написати на парі рядків програмного коду більше, але як тільки сховище...
Контактні дані Київ, Мясницкая вул., 35
Телефон: +38 (044) 997 - 93 - 19
Факс: +38 (044) 999 - 99 - 91
Використовуємо ключ Verbose
У главі 10 ми познайомилися з безліччю способів використання модуля subprocess. Створення нових інструментів командного рядка шляхом обгортання існуючих команд сценаріями мовою Python і зміни їх API, або шляхом включення однієї або декількох команд UNIX у сценарії мовою Python являє собою досить цікаву область для досліджень. Немає нічого складного в тім, щоб обернути інструмент командного рядка сценарієм мовою Python і змінити її поводження так, щоб воно повніше відповідало нашим вимогам.

Можна було б, наприклад, інтегрувати в сценарій конфігураційний файл, у якому визначити значення аргументів для деяких параметрів або задавати в сценарії значення за замовчуванням для інших аргументів. Які би вимоги не пред'являлися, за допомогою модулів subprocess і opt parse можна без особливих проблем змінити поводження інструментів командного рядка UNIX. З іншого боку, змішування інструментів командного рядка зі сценарієм мовою Python дозволяє створювати цікаві інструменти, які не так-те просто написати мовою З або Bash.

Що ви скажете щодо змішування команди dd із многопоточным сценарієм, де використовуються черги,-tcpdump з бібліотекою регулярних виражень для мови Python або використання спеціалізованої версії rsync? Всі ці "змішані" команди UNIX 2.0 дуже нагадують особливості, що є присутнім в Web 2.O. Змішування Python з утилітами UNIX приводить до появи нових ідей і до рішення проблем різними способами. У цьому розділі ми досліджуємо деякі із цих прийомів

Шаблон проектування "кудзу": обгортання інструментів сценаріями мовою Python: Іноді використовуваний інструмент командного рядка не зовсім точно відповідає тому, що потрібно вам. Він може вимагати занадто великого числа параметрів або порядок проходження аргументів відрізняється від того, до якого ви звикли. Використовуючи мову програмування Python, можна дуже легко змінити поводження утиліти й змусити неї робити саме те, що вам необхідно. Ми назвали це шаблоном проектування "Кудзу". Для тих, хто не знає, пояснимо, що кудзу - це быстрорастущее кучерява рослина, завезена на південь Сполучених Штатів з Японії.

Кудзу часто поглинає природний ландшафт, зовсім міняючи його зовнішній вигляд. За допомогою мови Python ви можете робити те ж саме із середовищем UNIX. У наступному прикладі ми обернули команду snmpdf сценарієм мовою Python, щоб спростити її використання. Для тих, хто не знаком з командою snmpdf, пояснимо, що вона призначена для вилученого виконання в системах, що володіють підтримкою SNMP і настроєних для одержання інформації з розділу MIB, що має відношення до дисків.
Служба аутентификации Служба аутентификацииОдне із самих удалих визначень, з якими нам доводилося зіштовхуватися, приводиться у Википедии: "прикладний протокол, що дозволяє звертатися до служби каталогів, що працює поверх протоколу TCP/IP". Як приклад...
Веб додатка Веб додаткаОдне з поліпшень, яке можна було б внести в цей додаток, -це реалізувати сортування в порядку, зворотному поточний. Зробити це досить просто, але ми залишимо реалізацію цієї можливості читачам. Як ще одне поліпшення...
Запуск сценарію Запуск сценаріюЦе в точності відповідає нашим очікуванням. Тепер спочатку спробуємо запустити сценарій, що додає новий запис, а потім знову запустимо сценарій, що витягає дані. Цей приклад ідентичний попередньому прикладу, де використовувався метод store,...
Створення звітів Створення звітівКрім того, ми могли б розширити цей сценарій і відшукувати запису з обсягом використання 80 відсотків, 70 відсотків і видавати попередження по досягненні цих рівнів. Такий сценарій легко можна було б об'єднати, наприклад, с...
 
(c) Copyright