为什么我的别名不适用于" sh -c"?

时间:2016-04-13 13:52:24

标签: bash sh

我不明白为什么,在我的服务器上

php --version 

给了我:

PHP 5.6.17 

sh -c 'php --version'

给了我:

PHP 4.4.9 

我只想在php 5.6中执行命令,而不是在php 4.4中使用" sh -c"命令。

换句话说,为什么我的php别名不适用于" sh -c"吗

如何使其与#34; sh -c"吗

我的.bash_profile:

# .bash_profile

# Get the aliases and functions
if [ -r ${HOME}/.bashrc ] ; then
  source ${HOME}/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin
BASH_ENV=$HOME/.bashrc
USERNAME=""

export USERNAME BASH_ENV PATH

我的.bashrc:

# .bashrc

# User specific aliases and functions

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

alias php='/usr/local/php5.6/bin/php'

1 个答案:

答案 0 :(得分:1)

比较bash --versionsh --version的输出。

sh实际上并不是bash,因此.bashrc在启动时并非来源,因此新shell中未定义别名php