阿尔派内apk:列出所有可用的软件包版本

24
如何在Alpine Linux中列出给定软件包的所有可用软件包版本?
我在apk帮助中找不到任何有用的内容。 apk info bash只会显示最新可用的bash版本。
# apk info bash
bash-5.0.0-r0 description:
The GNU Bourne Again shell

bash-5.0.0-r0 webpage:
https://www.gnu.org/software/bash/bash.html

bash-5.0.0-r0 installed size:
1200128

使用 --all 标志,我只会获得该版本的一些额外信息:

# apk info --all bash
bash-5.0.0-r0 description:
The GNU Bourne Again shell

bash-5.0.0-r0 webpage:
https://www.gnu.org/software/bash/bash.html

bash-5.0.0-r0 installed size:
1200128

bash-5.0.0-r0 depends on:
/bin/sh
so:libc.musl-x86_64.so.1
so:libreadline.so.8

bash-5.0.0-r0 provides:
cmd:bash

bash-5.0.0-r0 has auto-install rule:

bash-5.0.0-r0 license:
GPL-3.0-or-later

apk listapk list --available仅列出其最新版本的所有可用软件包。
因此,如果我运行apk list -a | grep "^bash-\d",我只会得到这个:

# apk list -a | grep "^bash-\d"
bash-5.0.0-r0 x86_64 {bash} (GPL-3.0-or-later)
1个回答

5

该命令列出最新分支中的信息以及不同分支中Alpine管理软件包的版本,例如v3.5、v3.6......v3.10

apk工具可以从多个存储库安装软件包。要检查的存储库列表存储在/etc/apk/repositories中,每行一个存储库。

您可以在此处搜索版本

https://pkgs.alpinelinux.org/packages?name=bash&branch=v3.5

或者

https://pkgs.alpinelinux.org/packages

因此,如果您想添加版本bash4.3,则应该在添加旧版本或从其他分支选择时指定分支名称,而不是最新的分支。

apk add  --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.5/main/ bash=4.3.46-r5

那么,如果你运行:
apk add  --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.5/main/ && apk info bash

您可以从两个不同的分支获取版本信息。

The GNU Bourne Again shell

bash-4.3.46-r5 webpage:
http://www.gnu.org/software/bash/bash.html

bash-4.3.46-r5 installed size:
700416

bash-5.0.0-r0 description:
The GNU Bourne Again shell

bash-5.0.0-r0 webpage:
https://www.gnu.org/software/bash/bash.html

bash-5.0.0-r0 installed size:
1200128

1
但是每个分支似乎只有一个版本。所以我只得到了大约9个版本,而实际上应该得到大约100个版本。 - Forivin
1
是的,这是因为同一分支中的所有小版本都是如此。 - Adiii

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接