Я думаю о том, чтобы включить 3 шага для удаления пакета в CentOS7, но застрял на объединении 3 команд удаления пакета только с 1 командой.
Хорошо, вот моя ситуация: у меня есть пакет Javajdk-8u151-linux-x64.rpmкоторый успешно установился ранее, и я хочу удалить его.
Конечно, я не могу удалить этот пакет java с помощью команды:
# rpm -e jdk-8u151-linux-x64.rpm
Поэтому мне придется использовать 3 команды в 3 шага, как показано ниже:
Шаг 1: Мне нужно найти имя пакета, который я устанавливаю:
[susu@localhost ~]$ rpm -qip jdk-8u151-linux-x64.rpm [susu@localhost ~]$ rpm -qip jdk-8u151-linux-x64.rpm Name : jdk1.8
Шаг 2: использование этой команды для точного поиска пакета:
[susu@localhost ~]$ sudo rpm -qa |grep -i 'jdk1.8' [sudo] password for susu: jdk1.8-1.8.0_151-fcs.x86_64
Шаг 3: использование
rpm -e
для стирания пакета:rpm -e jdk1.8-1.8.0_151-fcs.x86_64
Итак, мой вопрос: как мне объединить команды из Шага 2 и Шага 3 в одну команду?
решение1
Запросите NVR и удалите его.
rpm -e "$(rpm -qp --queryformat '%{name}-%{version}-%{release}' "$1")"