Linux GCC版本显示中的冲突

Linux GCC版本显示中的冲突,linux,shell,gcc,command,Linux,Shell,Gcc,Command,在Linux机器中,当前安装了多个版本的GCC。 要查找当前GCC版本,请执行以下命令 $ gcc --version 它显示, gcc(gcc)4.4.7 20120313(红帽4.4.7-4) 当通过shell脚本执行命令“gcc--version”时,它将显示不同的gcc版本 脚本内容: VERSION=$(gcc --version) echo ${VERSION} 显示器是,, GCC(GCC)4.82.版权(C)2013免费软件基金会, /P> 如果在命令行上执行相同的shel

在Linux机器中,当前安装了多个版本的GCC。 要查找当前GCC版本,请执行以下命令

$ gcc --version
它显示,
gcc(gcc)4.4.7 20120313(红帽4.4.7-4)

当通过shell脚本执行命令“gcc--version”时,它将显示不同的gcc版本

脚本内容:

VERSION=$(gcc --version)
echo ${VERSION}
显示器是,, <强> GCC(GCC)4.82.版权(C)2013免费软件基金会,<强/> /P> 如果在命令行上执行相同的shell内容,则会显示不同版本的GCC

$VERSION=$(gcc --version)
$echo ${VERSION}
它显示,
gcc(gcc)4.4.7 20120313(红帽4.4.7-4)


奇怪的是,对于同一个命令,它显示了两个不同版本的GCC。冲突的原因是什么?

很可能是当前shell和脚本使用了不同的
路径设置。如果在
gcc--version
命令之前放置一个
echo$PATH
,您将看到不同之处。

PATH
环境变量。能否显示
PATH
的内容,无论是从shell还是从脚本?“echo$PATH”都通过“命令行”和“shell脚本”显示了与“/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/test/bin:”相同的内容