Por que não corresponde ao efeito que obtenho?

1

Não consigo explicar o seguinte comportamento:

[centos4x64 ~] /usr/local/bin/gmake --version
GNU Make 3.82
Built for x86_64-unknown-linux-gnu
Copyright (C) 2010  Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

[centos4x64 ~] which gmake
/usr/local/bin/gmake

[centos4x64 ~] gmake --version
GNU Make 3.80
Copyright (C) 2002  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

Por que o gmake não qualificado corresponde ao dado por which ? Note que eu tenho v3.80 em / usr / bin / gmake. Isso é em uma versão de 64 bits do Centos 4.

    
por WilliamKF 01.09.2012 / 19:47

1 resposta

2

Porque o bash tem a localização de gmake como algum outro lugar em sua tabela de pesquisa de hash.

# list the path to the binary that invoking 'gmake' will call
hash -t gmake 
# have bash forget the mapping for 'gmake'
hash -d gmake
# have bash remember the correct mapping for 'gmake'
hash -p /usr/local/bin/gmake gmake
# or just
gmake
    
por 01.09.2012 / 19:49