나는 야간 버전을 찾는 것이 아니라 단지 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)