Используя застежку-молнию, как я могу удалить все пакеты, установленные из определенного репозитория?

Может быть мое предложение, глупый, но Вы могли просто установить раскладку клавиатуры Deutsch с $ setxkbmap -layout de или графический инструмент в Вашей системе и типе в SSID?

10
17.11.2013, 23:20
3 ответа

Я думаю, что нет такой команды. Можно перечислить пакеты из определенного репозитория:

zypper search --installed-only --repo devel:tools

или все осиротевшие пакеты, если Вы уже снесли тот репозиторий:

zypper packages --orphaned

Затем Вы могли попытаться cut пакет называет от вывода и передачи его к zypper remove если это стоит усилия.

7
27.01.2020, 20:03
  • 1
    Моя система openSuSE 12.3 не имеет --orphaned опция, но это могло бы работать: zypper packages -i -R: это перечисляет установленный пакет в обратном порядке репозитория. –  Jeroen Wiert Pluimers 31.05.2014, 13:57
  • 2
    --orphaned был добавлен в застежке-молнии 1.9.2 (github.com/openSUSE/zypper/issues/34) спасибо –  marcin 31.05.2014, 14:48

Вы можете использовать комбинацию zypper search, awkи xargs, чтобы удалить все пакеты из репозитория. Например:

zypper se --repo openSUSE-Tumbleweed-Debug --installed | awk '/^i(\+|\s)/ {print $3}' | xargs sudo zypper rm
2
20.08.2021, 13:02

У меня эта строка работает нормально

zypper search --installed-only --repo yourbadrepo|awk {'print $3'}|xargs sudo zypper rm 

Если вы хотите рискнуть или использовать в скрипте, -опция n избежать подтверждения (может сломать зависимости)

  zypper search --installed-only --repo yourbadrepo|awk {'print $3'}|xargs sudo zypper -n rm 
0
20.08.2021, 13:02

Теги

Похожие вопросы