apt - 유사한 패키지가 이미 설치되어 있는지 확인

apt - 유사한 패키지가 이미 설치되어 있는지 확인

이 문제주어진 데비안 패키지가 이미 설치되어 있지만 apt-get.

예를 들어, 시도하면 apt-get install libncurses-devapt-get은 다음과 같이 응답합니다.

Note, selecting 'libncurses5-dev' instead of 'libncurses-dev'

그런 다음 패키지( libncurses5-dev)를 설치하는데 이는 나에게 적합합니다.

하지만 패키지가 이미 설치되어 있는지 감지하는 스크립트를 작성하려면 어떻게 해야 할까요?

dpkg -s libncurses-dev응답은 패키지가 설치되지 않았다고 말하는데, 이는 실제로 libncurses5-dev설치되어 있기 때문에 정확합니다. 하지만 내 스크립트가 이를 감지하기를 원하며, 이 경우 더 이상 설치할 필요가 없습니다 libncurses-dev.

apt-get특정 패키지가 존재하는지 확인하는 옵션을 찾을 수 없습니다.또는 그 제공자 중 하나libncurses-dev이미 설치되었으므로 내 스크립트 도 체크인됩니다 libncurses5-dev.

답변1

libncurses-dev패키지나 별칭이 설치되어 있는지 확인하는 스크립트를 작성하려면 다음 프로그램 흐름을 고려하세요.

  1. 이 경우 dpkg해당 패키지가 정확한 이름으로 설치되었는지 확인하세요.libncurses-dev
  2. 위의 내용이 true로 평가되지 않으면 apt별칭이 아닌 이름을 사용하여 찾고 있는 패키지를 검색하세요.

    $ apt-cache search libncurses-dev
    libncurses5-dev - developer's libraries for ncurses
    

apt-cache search패키지에 "별칭"이 있으면 "별칭"을 반환하는 것 같습니다.

  1. #1이 false로 평가되고 #2가 별칭을 반환하는 경우 패키지의 별칭을 가져오고 #1을 다시 시도하세요.

패키지의 별칭을 다시 확인하십시오 . dpkg이 경우 별칭으로 패키지를 찾을 수 없으면(실제로 대체된 패키지) 설치하면 안 됩니다.libncurses5-devdpkg

답변2

이건 직업인 것 같아자격검색.

$ aptitude -F %p search '~Plibncurses-dev'
libncurses5-dev                                                                 
libncurses5-dev:i386
$ aptitude -F %p search '~Plibncurses-dev ~rnative'
libncurses5-dev                                                                 
$ aptitude -F %p search '~Plibncurses-dev ~rnative ~i'
libncurses5-dev

libncurses5-dev설치되지 않은 경우 마지막 항목은 아무 것도 인쇄하지 않습니다.

관련 정보