如何在旧发行版上强制升级 coreutils?

如何在旧发行版上强制升级 coreutils?

我正在运行一个老式的 kubuntu“精确”

我需要带有 -s 选项的最新版本的基本名称。我可以以某种方式强迫这个吗?

看来我需要 8.14 看看我在较新的盒子上看到的版本。

答案1

安装新软件的“正确”方法是升级您的发行版。这就是发布发行版的原则:采用许多软件的特定版本,测试它们一起运行,然后发布批次。

Ubuntu 有时会为较旧但仍受支持的发行版提供较新的软件,形式为向后移植。但没有 coreutils 的精确向后移植。

您可以从源代码编译一个较新的软件包并安装它,方法是构建 Ubuntu 源代码包并使用dpkg安装生成的 deb,或者编译上游源代码并将它们安装在/usr/local.但请注意,有时包的较新版本(尤其是像 coreutils 这样的基本包)可能会破坏某些东西。

/usr/local/other/coreutils-8.21如果它只是一个需要较新版本的 coreutils 的特定程序,请在特定目录(如)中安装较新版本,并/usr/local/other/coreutils-8.21/bin仅在运行该特定程序时添加到 PATH,并使用如下包装脚本

#!/bin/sh
PATH=/usr/local/other/coreutils-8.21/bin:$PATH
exec that-specific-program "$@"

您真的需要更新版本的 coreutils 吗?basename -s SUFFIX FILENAME也可以编写basename FILENAME SUFFIX适用于旧版本的代码。

相关内容