如果我只提供了软件包的名称,是否有任何命令可以返回 ubuntu 系统中 .deb 软件包的全名。我知道有一个命令可以提供有关软件包的信息,例如版本、体系结构等,但我需要单个输出中的全名,以便在我的 Web 应用程序中进一步使用。
例如:
$ some command Lighttpd
lighttpd_1.4.35-4ubuntu2_amd64.deb
答案1
运行以下命令
apt-cache show lighttpd | grep Filename
输出如下所示。
Filename: pool/universe/l/lighttpd/lighttpd_1.4.35-4ubuntu2_amd64.deb
下面的命令将只给你 deb 文件名,而不提供路径。apt
可以使用命令代替apt-cache
。
apt-cache show lighttpd | grep Filename | rev | cut -d'/' -f 1 | rev
输出:
lighttpd_1.4.35-4ubuntu2_amd64.deb
答案2
简而言之,不是,因为已安装的 debian 包和安装它的文件名之间没有直接关联。
当然,您可以通过简单地组合已安装软件包数据库中有关软件包的各种详细信息来构造您给出的文件名,但这不一定是软件包来源文件的准确描述。您可以创建一个脚本,以多种不同的语言为您提供这个不准确的文件名。