使用 apt-get 安装最新版本的版本号软件(例如 Tomcat)?

使用 apt-get 安装最新版本的版本号软件(例如 Tomcat)?

我不是在寻找一些夜间版本,我只是想要 apt 数据库中可用的最高版本的软件。尽管是初学者,我还是设法获取了基本 tomcat 安装的列表:

XXXXX@debianvirtualbox:~/$aptitude 搜索 tomcat[0-9]+$
p tomcat7 - Servlet 和 JSP 引擎                    
i tomcat8 - Apache Tomcat 8 - Servlet 和 JSP 引擎

对于其他程序也可以做同样的事情,但我还没有找到任何其他程序可以托管两个具有相同名称的不同版本。我假设有一天tomcat0会弹出,我宁愿不编辑我的安装程序只是为了确保我们是最新版本。

那么有没有一种方法可以扩展我的命令,使其能够找到最高的 iftomcat[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)

相关内容