Eu tenho o XAMPP instalado no OSX e, por padrão, ele precede o caminho para seu próprio bindiretório (cheio de vários utilitários) para minha $PATHvariável:
# Add path to XAMPP PHP version
export XAMPP_PHP=/Applications/XAMPP/xamppfiles/bin
export PATH="$XAMPP_PHP:$PATH"
Infelizmente, um de seus utilitários é chamado HEAD, que graças ao sistema de arquivos que não diferenciahead maiúsculas de minúsculas do OSX, colide com o comando Unix . O XAMPP não tem nenhuma HEADrelação com head(acho que emite uma solicitação HTTP HEAD).
Claro, eu quero usar o headXAMPP e ambos , então simplesmente alterei a ordem das variáveis do caminho:
export PATH="$PATH:$XAMPP_PHP"
Isso me permite usar head, mas agora há uma colisão entre a versão do PHP do XAMPP (por exemplo, 5.5) e a versão pré-instalada do PHP que acompanha o OSX (5.3). Como o caminho para 5.3 vem primeiro, ele acaba tendo precedência.
Meu plano para uma solução hackish era acrescentar o caminho completo do arquivo + nome apenas a versão do PHP do XAMPP e , em seguida, anexar o restante do caminho após $PATH:
export PATH="/Applications/XAMPP/xamppfiles/bin/php:$PATH:$XAMPP_PHP"
Isso parece não funcionar. Quando eu reinicio o bash e verifico php -v, ele ainda está no PHP 5.3 - a versão interna. É possível adicionar um caminho de arquivo específico $PATH?
$PATHpode consistir apenas em diretórios. Você pode simplesmente ligar o executável específico que deseja em um diretório existente no seu$PATH.