특정 소프트웨어(경로에 없을 수 있음)가 사전 설치되어 있는지 확인하는 방법은 무엇입니까?

특정 소프트웨어(경로에 없을 수 있음)가 사전 설치되어 있는지 확인하는 방법은 무엇입니까?
anisha@linux-dopx:~> which qmake
which: no qmake in (/opt/qtcreator-2.0.92/bin/:/opt/qtsdk-2010.05/qt/bin/:/opt/qtcreator-2.0.92/bin/:/opt/qtsdk-2010.05/qt/bin/:/usr/lib64/mpi/gcc/openmpi/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/X11R6/bin:/usr/games:/usr/lib/mit/bin:/usr/lib/mit/sbin)

anisha@linux-dopx:~> locate qmake
anisha@linux-dopx:~> 

소프트웨어가 현재 PATH에 없는 경우 소프트웨어가 설치되었는지 확인하는 다른 방법이 있습니까?

답변1

노력하다 whereis. 바이너리 -b가 yours 에 포함되지 않은 경우에도 바이너리에 적합한 모든 위치를 찾습니다 $PATH. 예를 들어 내 것이 아니더라도 반환 whereis -b ifconfig됩니다 ./sbin/ifconfig/sbin$PATH

답변2

문제는 '단어의 유일한 정의'이다.설치됨”. 그것을 설명하는 방법은 여러 가지가 있습니다.

  • 프로그램을 "설치"하는 일반적이고 가장 올바른 방법은 패키지 관리자 도구를 사용하는 것입니다. 이러한 프로그램은 배포판에 따라 다릅니다. Gentoo에는 emerge다른 유용한 프로그램이 많이 있습니다.나르다;Debian 기반 시스템(예: Ubuntu)에는 apt-<something>도구 등이 있습니다. 이러한 도구는 설치든, 설치든 가능할 때마다 사용해야 하는 도구입니다.사용 가능/설치된 소프트웨어 검색- 시스템에서의 주요 임무는 공식 소프트웨어에 대한 모든 정보를 유지하는 것입니다.

  • 저장소에서 사용할 수 없는 소프트웨어는 자체 특정 설치 스크립트를 통해 설치할 수도 있습니다. 시스템 관리 도구는 이러한 소프트웨어를 자동으로 검색하지 않습니다. 이로 인해 다양한 문제가 발생할 수 있습니다. 이러한 프로그램의 구성 요소를 찾으려면 , 또는 와 같은 도구만 locate사용할 findwhich있습니다 whereis.

  • 또한 프로그램을 구축하고 "수동으로" 배치한 다음 환경(예: PATH)을 조정하여 사용할 수 있게 만들 수도 있습니다. 사용자 및 시스템 관점에서 보면 이전 접근 방식과 크게 다를 수도 있고, 약간 다를 수도 있고, 전혀 다르지 않을 수도 있습니다.

귀하의 경우에는 구별해야합니다바이너리 파일 찾기그리고여부를 결정설치됨. 바이너리의 실제 부분을 찾으려면 which또는 를 사용하면 됩니다 whereis. 알아채다PATH루트 및 루트가 아닌 환경 변수는 다를 수 있습니다.사용자. 여부를 확인하고 싶다면일단 설치되면(단어의 첫 번째 해석을 사용하여) 배포판의 패키지 관리 소프트웨어를 사용하십시오.

관련 정보