Перейти к содержимому

Документация по BlackArch на русском языке

Инструкции, советы, новые программы

Меню
  • Главная
  • Список инструментов
  • HackWare
Меню

Как в pacman выполнить установку (или удаление) пакетов по регулярному выражению

Опубликовано в 27.01.2025 от Alexey

Как в pacman выполнить установку пакетов с подстановочным знаком (или по регулярному выражению)

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

К примеру, я хочу одной командой установить все пакеты имя которых начинается с «kodi-addon-». Попробуем это сделать следующей командой:

sudo pacman -S kodi-addon-*

Команда завершиться ошибкой:

error: target not found: kodi-addon-*

Это вдвойне неприятно, поскольку в дистрибутивах на основе Debian с помощью менеджера пакетов apt похожий синтаксис является допустимым, например:

sudo apt install kodi-audiodecoder-*

Были найдены интересующие нас пакеты по части имени и подстановочному знаку:

Note, selecting 'kodi-audiodecoder-sidplay' for glob 'kodi-audiodecoder-*'
Note, selecting 'kodi-audiodecoder-openmpt' for glob 'kodi-audiodecoder-*'
Note, selecting 'kodi-audiodecoder-fluidsynth' for glob 'kodi-audiodecoder-*'
Installing:
  kodi-audiodecoder-fluidsynth  kodi-audiodecoder-openmpt  kodi-audiodecoder-sidplay

В pacman подстановочные знаки (и регулярные выражения) работают только при поиске пакетов, но не работают при установке. Тем не менее, два этих действия (поиск пакетов и их установка) можно совместить в одной команде:

sudo pacman -S $(pacman -Ssq 'РЕГУЛЯРНОЕ_ВЫРАЖЕНИЕ')

В качестве РЕГУЛЯРНОГО_ВЫРАЖЕНИЯ могут быть:

  1. часть имени пакетов
  2. часть имени пакетов и подстановочные знаки
  3. регулярное выражение

Примечание: обратите внимание, что если строка поиска (РЕГУЛЯРНОЕ_ВЫРАЖЕНИЕ) содержит в себе символы, которые имеют специальное значение для оболочки, то такую строку нужно помещать в кавычки. Если вы используете часть имени пакетов без, например «*» или «|», то вы можете опускать кавычки.

Например, следующая команда установит все пакеты имя которых имеет вид «kodi-addon-»:

sudo pacman -S $(pacman -Ssq kodi-addon-)

Рассмотрим пример использования регулярного выражения — следующая команда установить все пакеты, имена которых имеют вид «kodi-addon-audioencoder-*» ИЛИ «kodi-addon-imagedecoder-*»:

sudo pacman -S $(pacman -Ssq 'kodi-addon-audioencoder-|kodi-addon-imagedecoder-')


Перед выполнением установки, вы можете проверить, какие именно пакеты будут установлены, для этого используйте следующую команду:

pacman -Ssq 'РЕГУЛЯРНОЕ_ВЫРАЖЕНИЕ'

Например:

pacman -Ssq 'kodi-addon-audioencoder-|kodi-addon-imagedecoder-'

Эта команда выведет список пакетов:

kodi-addon-audioencoder-flac
kodi-addon-audioencoder-lame
kodi-addon-audioencoder-vorbis
kodi-addon-audioencoder-wav
kodi-addon-imagedecoder-heif
kodi-addon-imagedecoder-raw

Ещё одна проверка перед установкой пакетов:

pacman -Ssq kodi-addon-

Будут найдены следующие пакеты, соответствующие указанному шаблону имени:

kodi-addon-audioencoder-flac
kodi-addon-audioencoder-lame
kodi-addon-audioencoder-vorbis
kodi-addon-audioencoder-wav
kodi-addon-imagedecoder-heif
kodi-addon-imagedecoder-raw
kodi-addon-inputstream-adaptive
kodi-addon-inputstream-rtmp
kodi-addon-peripheral-joystick
kodi-addon-screensaver-asteroids
kodi-addon-screensaver-biogenesis
kodi-addon-screensaver-greynetic
kodi-addon-screensaver-matrixtrails
kodi-addon-screensaver-pingpong
kodi-addon-screensaver-pyro
kodi-addon-screensaver-stars
kodi-addon-visualization-projectm
kodi-addon-visualization-shadertoy
kodi-addon-visualization-spectrum
kodi-addon-visualization-waveform

Как в pacman выполнить удаление пакетов с подстановочным знаком (по регулярному выражению)

Для удаления пакетов по части имени или регулярному выражению вы можете использовать следующую команду:

sudo pacman -R $(pacman -Qsq 'РЕГУЛЯРНОЕ_ВЫРАЖЕНИЕ')

Примеры:

sudo pacman -R $(pacman -Qsq 'kodi-addon-audioencoder-|kodi-addon-imagedecoder-')

sudo pacman -R $(pacman -Qsq 'kodi-addon-')

Если предварительно вы хотите проверить, какие именно пакеты будут удалены, то используйте команду следующего вида:

pacman -Qsq 'РЕГУЛЯРНОЕ_ВЫРАЖЕНИЕ'

Обратите внимание, что это не та же самая команда, которая использовалась для проверки, какие пакеты будут установлены по указанному регулярному выражению. В первом разделе мы использовали операцию -S (поиск по всем пакетам репозитория), а для удаления мы используем операцию -Q (поиск только по установленным пакетам).

Примеры:

pacman -Qsq 'kodi-addon-'
pacman -Qsq 'kodi-addon-audioencoder-|kodi-addon-imagedecoder-'

Смотрите также:

  • Практические примеры использования pacman
  • Pacman: работа с пакетами в BlackArch (перевод справки и мануала)

Близкие статьи

  • Pacman: работа с пакетами в BlackArch (перевод справки и мануала) (100%)
  • Практические примеры использования pacman (100%)
  • Графический интерфейс и цветной вывод pacman (100%)
  • Как установить программу из Arch User Repository (AUR) – пользовательского репозитория Arch (100%)
  • Автоматическая установка и обновление пакетов AUR (100%)
  • Решение проблемы «0034:err:module:load_builtin_dll failed to load .so lib for builtin L"l3codeca.acm": libmpg123.so.0: невозможно открыть разделяемый объектный файл: Нет такого файла или каталога» (RANDOM - 50%)

Добавить комментарий Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

wp-puzzle.com logo


Поиск


Свежие записи

  • Как в Linux настроить медиасервер для показа фильмов на телевизоре (как установить и настроить Serviio в Arch Linux, Manjaro, BlackArch)
  • Как в Arch Linux установить пакет определённой версии. Как откатить пакет до предыдущей версии
  • Ошибка «error: failed retrieving file ‘community.db’» (РЕШЕНО)
  • Ошибка «PHP Startup: session.sid_length INI setting is deprecated» (РЕШЕНО)
  • Как в pacman выполнить установку (или удаление) пакетов по регулярному выражению

Свежие комментарии

  • Иван к записи Ошибка «error: failed retrieving file ‘community.db’» (РЕШЕНО)
  • Alexey к записи Как в Arch Linux (BlackArch, Manjaro) посмотреть информацию о пакете
  • - к записи Как в Arch Linux (BlackArch, Manjaro) посмотреть информацию о пакете
  • Егор к записи Ошибка PostgreSQL «An old version of the database format was found.» (РЕШЕНО)
  • Анастасия к записи Как установить и настроить OpenVPN в ArchLinux / BlackArch




Рубрики

  • Sniffing и Spoofing
  • Архив
  • Без рубрики
  • Взлом Wi-Fi сетей
  • Инструкции
  • Новости
  • Общая информация/новости
  • Разведка
  • Справка и подсказки




Яндекс.Метрика
© 2026 Документация по BlackArch на русском языке | На платформе Minimalist Blog Тема WordPress