apt-get을 사용하여 최신 버전의 버전 번호 소프트웨어(예: Tomcat)를 설치하시겠습니까?

apt-get을 사용하여 최신 버전의 버전 번호 소프트웨어(예: Tomcat)를 설치하시겠습니까?

나는 야간 버전을 찾는 것이 아니라 단지 apt 데이터베이스에서 사용 가능한 가장 높은 버전의 소프트웨어를 원할 뿐입니다. 초보자임에도 불구하고 기본 Tomcat 설치 목록을 얻을 수 있었습니다.

XXXXX@debianvirtualbox:~/$적성 검색 tomcat[0-9]+$
p tomcat7 - 서블릿 및 JSP 엔진                    
i tomcat8 - Apache Tomcat 8 - 서블릿 및 JSP 엔진

다른 프로그램에서도 동일한 작업을 수행할 수 있지만 동일한 이름을 가진 두 가지 다른 버전을 호스팅할 수 있는 다른 프로그램을 찾지 못했습니다. 언젠가는 뭔가가 나타날 것이라고 가정하고 tomcat0있으며 최신 상태인지 확인하기 위해 설치 프로그램을 편집하고 싶지 않습니다.

tomcat[0-9]+그렇다면 내 명령을 확장하여 다음과 같이 일치하는 경우 맨 위를 찾는 방법이 있습니까 apt-get install?

TOMCAT=getLatestTomcat; # I need your help with this line
read -p "Tomcat server is missing. Install $TOMCAT server automatically?" -n 1 -r
echo 
if [[ $REPLY =~ ^[Yy]$ ]]
then
   echo "Ok, installing.";
   apt-get install $TOMCAT
else
   echo "Ok, do it yourself..."
   exit 404;
fi;

방금 만든 스크립트보다 추가 응용 프로그램에서 더 유용할 수 있으므로 대답이 더 일반적인 경우 좋을 것입니다.

답변1

이것을 사용하시면 됩니다 sort. 예는 다음과 같습니다.

getLatestTomcat() {
  apt-cache search 'tomcat[0-9]+$' | awk '{ print $1 }' | sort --version-sort | tail -n 1
}

tomcat_package=$(getLatestTomcat)

관련 정보