[Решено] Pacman -R и регулярные выражения

Поскажите, умеет ли pacman использовать регулярные выражения для удаления по маске.

Например

pacman -Rns xfce4-*

Если умеет, то куда копать? В качестве оболочки используется bash с дефолтными параметрами.
Shtsh
Поскажите, умеет ли pacman использовать регулярные выражения для удаления по маске.
Например
pacman -Rns xfce4-*

Если умеет, то куда копать? В качестве оболочки используется bash с дефолтными параметрами.
Ключ -s (–search) как раз и призван рабоать с регулярными выражениями:
-s, –search <regexp>
Search each locally-installed package for names or descriptions that match regexp. When including multiple search terms, only packages with descriptions matching ALL of those terms are returned.
Но, например,
pacman -Qs gnome-*
сработает, а
pacman -Rns gnome-*
выдаст:
$  pacman -Rns gnome-*
ошибка: 'gnome-*': target not found
Поэтому, вероятно, надо идти другим путем. Например (не хулить меня за этот вариант, я не программер):
pacman -Qsq gnome-* | xargs -p pacman -R
Только можно убить всё подряд. Поэтому лучше убивать пакеты поодиночке:
pacman -Qsq gnome-* | xargs -pi pacman -R {}
Показал на примере GNOME, который у меня стоит.
Говорила мама: "RTFM, сынок!"
pacman -Rns $(pacman -Qqs gnome-*)
Должно выдать список всех пакетов gnome-* на удаление. И кнопки Y/n для подтверждения
www.linux32.ru - новости и статьи о Linux
Сравним:
pacman -Qsq gnome-* | xargs -pi pacman -R {}
pacman -R agave ?...n
pacman -R aisleriot ?...n
pacman -R alacarte ?...n
и т.д.
Вариант 32reg:
pacman -Rns $(pacman -Qqs gnome-*)
проверка зависимостей...
ошибка: не удалось подготовить запрос (не удалось удовлетворить зависимости)
:: epiphany-extensions: требует epiphany
:: gedit-latex-plugin: требует gedit
:: gedit-plugins: требует gedit
:: gtk-doc: требует gnome-doc-utils
:: gummi: требует gtksourceview2
:: gvfs: требует libsoup-gnome
:: gvfs: требует gnome-disk-utility
:: gvfs-smb: требует libgnome-keyring
:: hyena: требует gnome-sharp
:: libepc: требует libsoup
:: libgksu: требует libgnome-keyring>=2.30.1
:: librsvg: требует libcroco
:: libwebkit: требует libsoup
:: nautilus-actions: требует nautilus
:: nautilus-open-terminal: требует nautilus
:: pdfmod: требует gnome-doc-utils
:: pidgin-libnotify: требует notification-daemon
:: telepathy-gabble: требует libsoup
:: telepathy-salut: требует libsoup
:: totem-plugin: требует totem=3.0.1
:: tracker: требует libgnome-keyring
:: tracker: требует libgsf
:: turpial: требует notification-daemon
т.е. собственно без гномовских пакетов (кроме нескольких плагинов) и с неразрешенными зависимостями.
Говорила мама: "RTFM, сынок!"
Как насчёт вспомнить о группах?
pacman -R xfce4 xfce4-goodies libxfce4ui libxfcegui4 thunar-vfs xfmedia
xfce4 xfce4-goodies это группы, после них остатки, которые в группы не входят. У вас, возможно, будет что-то ещё или не будет чего-то, но это уже мелочи.
pacman -Qsq gnome-* | xargs -pi pacman -R {}
pacman -R agave ?...n
А если “?…y” - те-же грабли на неудовлетворённых зависимостях или как? Может попробовать
pacman -Qsq gnome-* | xargs -pi pacman -Rdd {}
?
Ну и мои 5 копеек в общее дело)))
comm -1 -2 <(pacman -Qsq gnome-* | sort) <(pacman -Qqt | sort) | xargs -pi pacman -Rsc {}
Предлагает удалять только те пакеты которые в списке “pacman -Qqt”, т.е. от которых другие не зависят.
Бедный гномик, и так его, и эдак…
Rdf
Ну и мои 5 копеек в общее дело)))
comm -1 -2 <(pacman -Qsq gnome-* | sort) <(pacman -Qqt | sort) | xargs -pi pacman -Rsc {}
Предлагает удалять только те пакеты которые в списке “pacman -Qqt”, т.е. от которых другие не зависят.
Вот что значит мозговой штурм!
Говорила мама: "RTFM, сынок!"
Спасибо за коллективный разум
 
Зарегистрироваться или войдите чтобы оставить сообщение.