bash 升级但它的版本没有改变

Yve*_*ves 7 upgrade package-management apt bash

我正在 Ubuntu 14.04 上工作,但发现了一些我无法理解的东西。

我执行如下命令:

apt update && apt list --upgradable
Run Code Online (Sandbox Code Playgroud)

我发现它bash在可升级列表中。

现在的输出bash --version告诉我 bash 的版本是4.3.11(1).

那我做apt upgrade

令我惊讶的是,我bash --version再次这样做,输出根本没有改变。的版本bash还是4.3.11(1)

那么这正常吗?,某些软件包可以升级而其版本不变?

mur*_*uru 13

您还应该检查软件包版本:

$  bash --version
GNU bash, version 4.4.12(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
$ apt-cache policy bash | head -n3
bash:
  Installed: 4.4-5ubuntu1~16.04.york0
  Candidate: 4.4-5ubuntu1~16.04.york0
Run Code Online (Sandbox Code Playgroud)

可以看出,包和 bash 版本字符串是有区别的,因为它们是由不同的人设置的。在您的情况下,上游很可能没有任何更改,并且更改完全由包维护者进行,因此bash --version保持不变,但包版本已更改。