Не удалось удалить все пакеты RPM с помощью «dnf eras *-.rpm and rpm -e *.rpm»

Не удалось удалить все пакеты RPM с помощью «dnf eras *-.rpm and rpm -e *.rpm»

Я установил несколько пакетов с rpm -i *.rpmиdnf install *.rpm

Но я не смог удалить все эти пакеты, которые я установил с помощью dnf -i *.rpm, rpm -i *.rpm, но я хочу удалить их с помощью rpm -e *.rpmиdnf remove *.rpm

Выдавалась следующая ошибка:

Error: No packages marked for removal.

Но я попробовал установить их, удалив все пакеты снова с помощью rpm -i *.rpmи dnf install *.rpm. Но он выдал эту ошибку:

package somepackage(s).rpm is already installed"

Но я снова попытался удалить эти пакеты, но снова возникла та же ошибка:

Error: No packages marked for removal.

Я хочу узнать, как мне стереть эти пакеты, не стирая их по одному. Я хочу просто стереть эти пакеты немедленно, используя *.rpm.

Я попробовал установить только один пакет, и он завершился, и я попробовал удалить этот пакет, и он завершился.

Я просто хочу стереть все пакеты одной командойrpm -i *

Можете ли вы мне помочь, где ошибка в команде в bash. Может быть, я не прав. Можете ли вы мне помочь исправить эту проблему.

Извините за мой плохой английский. (Мой родной язык не английский). Спасибо за ваше время.

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

решение1

Чтобы удалить пакеты, которые вы только что установили, вам понадобится пакетимена, а не имена файлов. Обычно (не всегда) вы можете получить это, удалив суффикс ".rpm" из каждого, например,

#!/bin/bash
LIST=
for name in *.rpm
do
    LIST="$LIST $(basename $name .rpm)"
done
sudo dnf remove $LIST

Удаление пакетов с помощью dnfпредпочтительнее, чем использование rpmнапрямую, поскольку учитываются зависимости.

решение2

Для установки используйтеимя файла. Например, "foo-1.2-x86_64.rpm". Для удаления (или запроса) используйтеимя пакетаНапример, "foo" или "foo-1.2-x86_64". Т.е.безсуффикс ".rpm".

Связанный контент