我正在考慮在 CentOS7 上包含 3 個步驟來卸載軟體包,但卡在將卸載軟體包的合併 3 個命令合併到僅 1 個命令中。
好的,這是我的情況:我有 java 套件jdk-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
第三步:使用
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")"