Дейв Тейлор - Сценарии командной оболочки. Linux, OS X и Unix. 2-е издание

Здесь есть возможность читать онлайн «Дейв Тейлор - Сценарии командной оболочки. Linux, OS X и Unix. 2-е издание» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: СПб., Год выпуска: 2017, ISBN: 2017, Издательство: Питер, Жанр: Программирование, ОС и Сети, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Сценарии командной оболочки. Linux, OS X и Unix. 2-е издание: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Сценарии командной оболочки. Linux, OS X и Unix. 2-е издание»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Сценарии командной оболочки помогают системным администраторам и программистам автоматизировать рутинные задачи с тех самых пор, как появились первые компьютеры. С момента выхода первого издания этой книги в 2004 году многое изменилось, однако командная оболочка bash только упрочила свои лидирующие позиции. Поэтому умение использовать все ее возможности становится насущной необходимостью для системных администраторов, инженеров и энтузиастов. В этой книге описываются типичные проблемы, с которыми можно столкнуться, например, при сборке программного обеспечения или координации действий других программ. А решения даются так, что их легко можно взять за основу и экстраполировать на другие схожие задачи.
Цель этой книги — продемонстрировать практические приемы программирования сценариев на bash и познакомить с самыми распространенными утилитами на коротких и компактных примерах, не вдаваясь в излишние подробности. Экспериментируйте с этими сценариями — ломайте, исправляйте и приспосабливайте их под свои нужды, чтобы понять, как они работают. Только так вы сможете решать самые сложные задачи.

Сценарии командной оболочки. Linux, OS X и Unix. 2-е издание — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Сценарии командной оболочки. Linux, OS X и Unix. 2-е издание», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Запуск сценария

Подобно другим CGI-сценариям в этой главе, данный сценарий нужно поместить в соответствующий каталог, чтобы к нему можно было обратиться из Интернета, и дать ему соответствующие права. Затем останется только ввести соответствующий URL в адресную строку браузера.

Результаты

Веб-страница автоматически изменяется каждый день. На рис. 8.3 показана страница с серией, вышедшей 4 августа 2016 года.

Рис 83Вебстраница с комиксом Kevin Kell сконструированная динамически - фото 395

Рис. 8.3.Веб-страница с комиксом «Kevin & Kell», сконструированная динамически

Усовершенствование сценария

Эту идею нетрудно применить к чему угодно в Интернете, если она вам понравилась. Вы можете читать заголовки с сайта CNN или South China Morning Post или извлекать случайные рекламные объявления с перегруженного сайта. Но повторим: если вы собираетесь сделать частью своего сайта какой-то контент, проверьте, является ли он общедоступным, или получите разрешение на его использование.

№ 66. Превращение веб-страниц в электронные письма

Объединив метод обратного инжиниринга соглашений об именовании файлов с утилитой слежения за изменениями на веб-сайте, представленной в сценарии № 62 (глава 7), можно организовать отправку на свой электронный адрес веб-страниц, в которых изменилось не только содержимое, но и имя файла. Этот сценарий не требует использования веб-сервера и запускается так же, как другие сценарии в предыдущих главах. Но имейте в виду: Gmail и другие провайдеры услуг электронной почты могут фильтровать письма, отправленные локальной утилитой Sendmail. Если вы не получите электронного письма от следующего сценария, попробуйте воспользоваться для тестирования такой службой, как Mailinator ( http://mailinator.com/).

Код

В качестве примера используем сайт «The Straight Dope», остроумную колонку Сесила Адамса (Cecil Adams), пишущего для «Chicago Reader». Мы легко можем реализовать автоматическую отправку по электронной почте новой колонки «Straight Dope» на указанный адрес, как показано в листинге 8.7.

Листинг 8.7.Сценарий getdope

··#!/bin/bash

··# getdope — загружает последнюю колонку "The Straight Dope."

··#·· Настройте ежедневный запуск сценария из cron, если вам это интересно.

··now="$(date +%y%m%d)"

··start="http://www.straightdope.com/ "

··to="testing@yourdomain.com"··# Замените нужным адресом.

··# Для начала получить URL текущей колонки.

картинка 396··URL="$(curl −s "$start" | \

··grep −A1 'teaser' | sed −n '2p' | \

··cut −d\" −f2 | cut −d\" −f1)"

··# Теперь, вооружившись этими данными, отправим электронное письмо.

··(cat << EOF

··Subject: The Straight Dope for $(date "+%A, %d %B, %Y")

··From: Cecil Adams

··Content-type: text/html

··To: $to

··EOF

··curl "$URL"

··) | /usr/sbin/sendmail −t

··exit 0

Как это работает

Страница с последней колонкой имеет URL, который нужно извлекать из главной страницы. Как показало исследование исходного кода, каждая колонка идентифицируется атрибутом class"="teaser" и самая свежая колонка всегда следует первой. То есть простой последовательности команд, начинающейся в строке картинка 397, должно быть достаточно, чтобы извлечь URL самой свежей колонки.

Команда curl извлекает исходный код главной страницы, команда grep выводит все строки, содержащие совпадения с "teaser", сопровождая каждую из них строкой, следующей за ней, и команда sed оставляет в выводе только вторую строку, чтобы упростить извлечение ссылки на самую свежую статью.

Запуск сценария

Чтобы извлечь только адрес URL, достаточно удалить все, вплоть до первой двойной кавычки, и все, что следует за первой двойной кавычкой в остатке. Протестируйте эту последовательность в командной строке, шаг за шагом, чтобы увидеть, что происходит на каждом этапе.

Результаты

Этот компактный сценарий демонстрирует сложный прием работы в Интернете, извлекая информацию из одной веб-страницы, чтобы использовать ее как основу для последующих запросов.

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

Усовершенствование сценария

Иногда в выходные возникает желание посидеть час-другой и почитать сразу все статьи, опубликованные за неделю, а не получать их ежедневно. Такие виды агрегатных электронных писем часто называют дайджестами, и их удобнее читать все сразу. Хорошим усовершенствованием для рассматриваемого сценария могло бы стать извлечение статей за последние семь дней и отправка их всех в одном электронном письме в конце недели. Это также помогло бы сократить поток электронных писем, поступающих в рабочие дни!

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Сценарии командной оболочки. Linux, OS X и Unix. 2-е издание»

Представляем Вашему вниманию похожие книги на «Сценарии командной оболочки. Linux, OS X и Unix. 2-е издание» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Сценарии командной оболочки. Linux, OS X и Unix. 2-е издание»

Обсуждение, отзывы о книге «Сценарии командной оболочки. Linux, OS X и Unix. 2-е издание» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x