将某个软件版本设为 ubuntu 中的默认版本

cha*_*HXC 11 linux zsh php ubuntu oh-my-zsh

我目前在 ubuntu 12.04 上安装了 2 个版本的 php。

一个用于使用 apt-get 安装的 php 5.3,而另一个使用带有 php 5.5 的 xampp 安装

当我执行这些命令时:

> which php
/usr/bin/php

> php --version
PHP 5.3.10-1ubuntu3.8 with Suhosin-Patch (cli) (built: Sep  4 2013 20:05:42) 
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
    with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethan

>echo $PATH
/home/chanhxc/bin
/usr/lib/lightdm/lightdm
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/usr/games
/opt/lampp/bin
/home/chanhxc/pear/bin
/home/chanhxc/.composer/vendor/bin
/opt/lampp/bin
/home/chanhxc/bin
/usr/lib/lightdm/lightdm
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/usr/games
/home/chanhxc/bin
/usr/lib/lightdm/lightdm
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/usr/games
/opt/lampp/bin
/home/chanhxc/pear/bin
/home/chanhxc/.composer/vendor/bin
/opt/lampp/bin
Run Code Online (Sandbox Code Playgroud)

我如何使 php 5.5 成为要运行的默认版本?

顺便说一句,我的默认 shell 是 zsh。这是我的 .zshrc 中的行

export   PATH=$PATH:/home/chanhxc/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
    # xampp, pear, composer
export PATH=$PATH:/opt/lampp/bin:/home/chanhxc/pear/bin:/home/chanhxc/.composer/vendor/bin:/opt/lampp/bin
Run Code Online (Sandbox Code Playgroud)

更新

如果我选择update-alternatives 选项。这是我目前拥有的。

>update-alternatives --query php
Link: php
Status: auto
Best: /usr/bin/php5
Value: /usr/bin/php5

Alternative: /usr/bin/php5
Priority: 50
Slaves:
 php.1.gz /usr/share/man/man1/php5.1.gz
Run Code Online (Sandbox Code Playgroud)

小智 18

我认为在 Ubuntu 上执行此操作的最佳方法是这样的:

须藤更新替代品 --set php /usr/bin/php5.6

您可以根据需要更改版本。


Mar*_*iae 10

你可以做一百万件事情而不是改变你的 $PATH。

一种是在你的 /home/YOUR_NAME/.bashrc 文件中定义一个别名,

alias myphp=' /path/to/my/favorite/php ' 
Run Code Online (Sandbox Code Playgroud)

另一种方法是重命名您不想要的 php 版本,并将符号链接中的 /usr/bin/php 转换为您希望使用的版本:

sudo mv /usr/bin/php /usr/bin/php_5.3.10
sudo ln -s /path/to/php/you/want /usr/bin/php
Run Code Online (Sandbox Code Playgroud)

或者您可以使用 Debian 替代系统。首先,你安装一个 php 替代品,

 sudo update-alternatives --install "/usr/bin/php" "php" "/pathto/your/favorite/php" 1 
Run Code Online (Sandbox Code Playgroud)

然后你通过以下方式控制一切都很好

sudo update-alternatives --display php
Run Code Online (Sandbox Code Playgroud)

还有很多很多。