list>> grep >> uninstall에서 단 하나의 명령을 사용하여 rpm 패키지를 제거할 수 있습니까?

list>> grep >> uninstall에서 단 하나의 명령을 사용하여 rpm 패키지를 제거할 수 있습니까?

CentOS7에서 패키지를 제거하는 3단계를 포함하려고 생각했지만 패키지를 제거하기 위해 3개의 명령을 1개의 명령으로 병합하는 데 막혔습니다.

좋아, 이것이 내 상황이다: 나는 자바 패키지를 가지고 있다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
    
  • 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")"

관련 정보