Добавить в избранное | Сделать стартовой страницей

Большая Linux библиотека для пользователей OS Linux и ПО для нее
Есть что сказать? Нужен совет? Посети наш форум.


При поддержке
Продвижение сайта
Создание сайта
Администрирование сервера
настройка сервера
Администрирование сервера
настройка сервера
Администрирование сервера
аренда сервера


Поиск информации об rpm-пакетах с использованием механизма конвейера и команды grep.

Перевод : Lomash Dmitry

Очень часто появляется необходимость узнать номер релиза большого числа пакетов в системе Linux. Скажем, к примеру, Вы не уверены какую версию GNOME Вы используете. При помощи команд rpm, grep, механизма конвейера, и пары ключей Вы сможете очень быстро это выяснить. При написании данной статьи, автор использовал систему управления пакетами Red Hat (в более частом использовании RPM) совместно с мощной командой поиска grep для обращения к базе данных rpm. Эти две команды (rpm и grep) объединяются для совместного использования, этот метод называется конвейером и обозначается ( | ).

Синтаксис команд выглядит следующим образом:

rpm -qa | grep PACKAGE_NAME

При рассмотрении составных частей данной команды, мы видим, что grep использует данные полученные при запросе (ключ q) ко всем (ключ a) вхождениям в базу rpm пакета PACKAGE_NAME.

Хотя данная конструкция не отображает все возможности команды, она дает начальные понятия их использования.

Допустим, мы хотим посмотреть какие пакеты установлены для GNOME. Если использовать следующую конструкцию:

rpm -qa | grep gnome

вы вероятно получите нечто следующего вида:

[jwallen@giles jwallen]$ rpm -qa | grep gnome
sawfish-gnome-0.28.1-0_helix_2
gnome-pin-conduits-1.2.0-0_helix_1
gnome-games-devel-1.2.0-0_helix_1
gnome-audio-1.0.0-7
gnome-audio-extra-1.0.0-7
gnome-linuxconf-0.23-1
......................................
[часть текста пропущена]

Как видно из примера, на экран выведены все пакеты, содержащие слово gnome. Это иллюстрирует очевидное ограничение - не все пакеты, которые необходимы пакету GNOME содержат слово gnome. Например, GNOME зависит от большого числа библиотек, таких как gtk. Для нахождения всех установленных компонентов gtk введите команду rpm -qa| grep gtk:

[jwallen@giles jwallen]$ rpm -qa | grep gtk
pygtk-libglade-0.6.4-1
rep-gtk-libglade-0.11-0_helix_2
gtk-1.0.3-1
gtk+10-1.0.6-6
pygtk-0.6.3-1
gtk+-1.2.7-1_helix_2
gtk-engines-0.10-1_helix_2
gtk+-devel-1.2.7-1_helix_1

Очевидно, что предложенная система - это лишь небольшая помощь для нахождения всех пакетов, которые имеют зависимости от других пакетов. Тем не менее, конвейер rpm и grep поможет Вам найти номера релизов и имена необходимых Вам пакетов.

Заключение

Хотя приведенная система имеет небольшие ограничения в возможностях, она, однако, жизнеспособна и имеет своих приверженцев. Она может успешно использоваться для нахождения установленных пакетов и номеров их релизов!

Пример

Начало


Трафаретная печать. Качественное блинтовое тиснение - способ маркировки изделий. Подарки женщинам. | BaselShop.ru предлагает: недорогие копии швейцарских часов в Москве - высокое качество