lsb_release -c
给了我当前版本,如何从命令行确定下一个版本?
即如果lsb_release -c
给我“utopic”,我如何从命令行确定下一个版本是“vivid”?
答案1
更新管理器解析meta-release*
来自的文件http://changelogs.ubuntu.com确定是否有新版本可供升级。我们可以使用http://changelogs.ubuntu.com/meta-release-development以此目的:
wget -qO - http://changelogs.ubuntu.com/meta-release-development |
awk '/^Dist:/ {print $2}' |
awk "p{print; exit} /$(lsb_release -sc)/{p=1}"
如果您使用的是最新版本并且下一个版本的名称尚未发布,则这应该不会打印任何内容。
答案2
没有可靠的方法来做到这一点,但我已经写了下面的函数应该(理论上)永远继续工作:
function nxt_release() {
curl -s http://cdimage.ubuntu.com/daily-live/current/ | grep \<h1\> | sed -e 's/<[^>]*>//g' -e s/'[Dd]aily [Bb]uild'/''/g
}
将其添加到您的.bashrc
文件中并运行
source .bashrc
然后你可以这样调用它:
nxt_release
它会打印下一个 Ubuntu 版本。请确保您已curl
安装该软件包。
当然,如果页面的布局或呈现方案发生变化,这将会中断,但这是目前我能想到的最好的方法。
请注意,下一个版本的代号在上一版本发布后几个月内都无法得知,可能尚未确定。不过,此功能仍应打印版本。