우리 대학에서는 원하는 거의 모든 우분투 패키지를 설치할 수 있지만, 수퍼 유저는 아닙니다 (패키지 설치를 요청해야 함).
일부 라이브러리에서는 패키지가 이미 설치되어 있는지 여부를 항상 쉽게 알 수있는 것은 아닙니다. 이것을 확인하는 간단한 방법 / 명령이 있습니까?
답변
apt-cache policy <package name>
답변
나는 항상 명령 줄에서 이것을 사용합니다.
dpkg -l | grep mysql
위의 내용은 dpkg에게 설치된 모든 패키지를 나열하도록 요청한 다음 이름에 mysql이있는 패키지 만 grep합니다.
답변
이번에는 적성을 사용하는 또 다른 변형 :
aptitude show <package>
탭 완성도 여기에서 작동합니다.
답변
dselect를 사용할 수 있습니다. su가 아닌 읽기 전용 액세스를 제공합니다.
또한 dpkg -s <package name>
패키지와 관련된 많은 세부 정보를 제공합니다. 예 “
userme:~$ dpkg-query -s sl
Package: sl
Status: unknown ok not-installed
Priority: optional
Section: games
답변
dpkg-query -s <package> 2>/dev/null | grep -q ^"Status: install ok installed"$
종료 코드 1 <package>
이 설치되어 있지 않으면 종료 코드 1을, 설치되어 있으면 0을 반환하므로 스크립트에서 사용할 수 있습니다 <package>
.
답변
더 간단한 해결책 :
apt list
설치된 패키지를 나열 하는 명령이 있습니다. 당신은 또한 특정 패키지를 검색 할 수 있습니다
apt list <package>
자세한 내용 man apt
은 참조하십시오.
답변
dpkg -s
프로그래밍 방식 사용법
내가 좋아하는 dpkg -s
그 상태로 종료로 1
패키지 중 하나가 설치되어 있지 않은 경우를 자동화하기 쉽게 만드는 :
pkgs='qemu-user pandoc'
if ! dpkg -s $pkgs >/dev/null 2>&1; then
sudo apt-get install $pkgs
fi
또한보십시오:
- https://stackoverflow.com/questions/1298066/check-if-a-package-is-installed-and-then-install-it-if-its-not
- 패키지가 서버에 설치되어 있는지 어떻게 확인합니까?
우분투에서 테스트 18.10.