在 Linux 操作系统下你是怎么切换同一个程序的不同版本的,本文教你一个方法,那就是使用使用 alt 命令行工具,它能以最简单的方式来实现相同程序不同版本的切换过程,而且安装 alt 非常容易。
前言 在不知道 alt 这个工具之间比如要在不同的 PHP 版本之间进行切换那可以使用 update-alternatives 命令的方法,比方它可以实现从一个 PHP 版本切换到另一个 PHP 版本。也就是说,update-alternatives 命令可以将系统范围默认使用的 PHP 版本设置为我们希望的版本。通俗的来说,你可以通过 update-alternatives 命令从系统范围设置程序的版本。如果你希望可以在不同目录动态设置不同的程序版本,该如何完成呢?在这种情况下,就得用 alt 了,它可以让你在类 Unix 系统中切换相同程序的不同版本。该工具简单易用,是 Rust 语言编写的自由、开源软件。
安装alt 安装 alt 工具十分简单。 运行如下命令,即可在 Linux 主机上安装 alt: $ curl -sL https://github.com/dotboris/alt/raw/master/install.sh | bash -s 下一步,将 shims 目录添加到你的 PATH 环境变量中,具体操作取决于你使用的 Shell。 1.对于 Bash: $ echo 'export PATH="$HOME/.local/alt/shims:$PATH"' >> ~/.bashrc $ source ~/.bashrc 2.对于 Zsh: $ echo 'export PATH="$HOME/.local/alt/shims:$PATH"' >> ~/.zshrc $ source ~/.zshrc 3.对于 Fish: $ echo 'set -x PATH "$HOME/.local/alt/shims" $PATH' >> ~/.config/fish/config.fish 现在 alt 已经安装完毕,接下来就是怎么使用它了。
使用alt在Linux系统下切换同一个程序的不同版本 如我之前所述,alt 只影响当前目录。换句话说,当你进行版本切换时,只在当前目录生效,而不是整个系统范围。 下面举例说明。我在 Ubuntu 系统中安装了两个版本的 PHP,分别为 PHP 5.6 和 PHP 7.2;另外,在 myproject 目录中包含一些 PHP 应用。 首先,通过命令查看系统范围默认的 PHP 版本: $ php -v 示例输出:
如截图中所示,我系统中默认的 PHP 版本为 PHP 7.2。 然后,我将进入放置 PHP 应用的 myproject 目录。 $ cd myproject 使用如下命令扫描可用的 PHP 版本: $ alt scan php 示例输出:
可见,我有两个 PHP 版本,即 PHP 5.6 和 PHP 7.2。按下 <空格> 键选中当前可用的版本。选中全部可用版本后,你可以看到图中所示的叉号。使用上下方向键在版本间移动,点击回车即可保存变更。
下面运行该命令并选取我们希望在 myproject 目录中使用的 PHP 版本: $ alt use php 我希望使用 PHP5.6 版本,故我(使用方向键)选取该版本并点击回车键。
现在,你可以在 /home/sk/myproject 目录下使用 PHP 5.6 版本啦。 让我们检查一下,在 myproject 目录下是否默认使用 PHP 5.6 版本: $ php -v 示例输出:
只要你不设置成其它版本,(在该目录下)将一直使用 PHP 5.6 版本。清楚了吗?很好!请注意,我们仅在这个目录下使用 PHP 5.6 版本。在系统范围内(注:当然是没单独设置过其它版本的目录下),PHP 7.2 仍是默认的版本。让我们检验一下,请看下图:
从上面的截图中可以看出,我有两个版本的 PHP:在 myproject 目录下,使用的版本为 PHP 5.6;在 myproject 外的其它目录,使用的版本为 PHP 7.2。
使用alt在Linux系统下切换NodeJS的不同版本 同上面的例子,你可以为每个目录设置你希望的程序版本。上面使用 PHP 仅用于说明操作,但方法适用于任何你打算使用的软件,例如 NodeJS 等。 下面是 NodeJS 的示例视频:
总结 如果你希望在同一个程序的不同软件包版本下测试你的应用,那么 alt 是你不错的选择,而且它的操作是统一的,成功率非常的高。
相关主题 |