Фильтрация отображаемых строк редактором sed

14.01.2018 19:43, admin - Полезные программы, Linux

В статье "Примеры использования редактора sed" мы рассмотрели разные приемы использования этого замечательного инструмента. Сегодня мы сфокусируем внимание на фильтрации строк при выводе на экран или при передаче данных для последующей обработки. Результат мы будем показывать на экране. Если понадобится изменить информацию непосредственно в файле, напоминаем о параметре -i:

sed -i 'условие' файл

Или для сохранения в другой файл:

sed -i 'условие' файл > другой_файл

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

Фильтрация отображаемых строк редактором sed

Примеры использования редактора sed

08.01.2018 10:52, admin - Linux, Полезные программы

Потоковый редактор sed (stream editor) с момента разработки в 1974 году и по сей день является одним из самых популярных инструментом для обработки текста. Рассмотрим на примерах наиболее востребованные приемы его использования.

В общем случае синтаксис такой:

 sed параметры [файл]

Если файл не указан, информация берется со стандартного ввода, что позволяет использовать sed в связке с другими утилитами при конвейерной обработке. Например:

echo 'Какой-нибудь текст' | sed 's/текст/другой текст/'

выведет

Какой-нибудь другой текст

В данном случае мы использовали команду 's' редактора sed для поиска и замены слова "текст" в строке "Какой-нибудь текст" на фразу "другой текст". Для совсем начинающих пользователей Linux поясним, что echo используется для вывода текста на стандартный вывод (попросту говоря, на экран), а '|' - это реализация конвейерной обработки, когда результат выполнения выводится не на экран, а используется как исходная информация для следующей команды. Конвейер может быть как угодно длинным и многоступенчатым, что позволяет реализовать даже очень сложную обработку, с использованием различных утилит, одной строкой.

Примеры использования редактора sed

Установка дополнительных версий PHP

03.01.2018 11:07, admin - CentOS, Операционные системы

Стандартный репозиторий CentOS содержит до неприличия древнюю, покрытую пылью и мхом версию PHP. Исправим это недоразумение. Мы установим две различные версии PHP - 5.6 для старых проектов и 7.2 для новых. Аналогично можно добавить и большее количество версий, при необходимости. Кроме того, настроим ISPConfig 3.1 для использования различных версий с возможностью выбора нужной из них через панель управления.

Установка дополнительных версий PHP

Создание субдомена в ISPConfig

17.11.2017 17:35, admin - Системное администрирование, ISPConfig

В ISPConfig субдомены создаются достаточно просто, но, по некоторым причинам, именно эта операция вызывает часто непонимание. Часто это происходит потому, что пользователь сам не понимает, что именно он хочет получить в результате. Или наоборот, имея опыт работы с другими системами управления хостингом, ожидают получить такой же, как и там, результат. На самом же деле основных вариантов создания субдоменов в ISPConfig есть два:

  • субдомен будет адресован в некоторую папку внутри корневого каталога основного домена;
  • субдомен будет адресован в самостоятельный корневой каталог, созданный специально для него и независимый от основного домена.

Какой вариант выбрать зависит от решаемой задачи.

Создание субдомена в ISPConfig

Поддержка dbase для php

05.10.2017 21:32, admin - CentOS

Несмотря на то, что базы данных в формате dBase (dbf) редко применяются в настоящее время, иногда доступ средствами php к таким базам все же требуется. В стандартных сборках php нужный модуль отсутствует, поэтому нужно собрать его самостоятельно из исходных файлов, которые можно найти  в библиотеке PECL (PHP Extension Community Library): https://pecl.php.net/package/dbase. Описание функций, реализованных в данной библиотеке, доступно на официальном сайте: http://php.net/manual/ru/ref.dbase.php

Последовательность действий:

  • Для php 7 загружаем последнюю доступную версию (на данный момент это версия 7.0.0beta1):

    svn checkout http://svn.php.net/repository/pecl/dbase/trunk/
    cd ./trunk

    Для php 5 нужно указать конкретную версию модуля:

    wget https://pecl.php.net/get/dbase-5.1.1.tgz
    tar -xvf dbase-5.1.1.tgz
    cd dbase-5.1.1

  • phpize
  • ./configure
  • make
  • cp ./modules/dbase.so /usr/lib64/php/modules/dbase.so
  • echo 'extension=dbase.so' > /etc/php.d/dbase.ini
  • systemctl restart httpd
    systemctl restart php-fpm

Описанный метод можно применить для любого дистрибутива, нужно только, при необходимости, изменить каталоги для размещения dbase.so и dbase.ini. В некоторых дистрибутивах модуль подключается непосредственно в файле конфигурации php.ini.