Mam XAMPP zainstalowany w OSX i domyślnie przygotowuje ścieżkę do własnego bin
katalogu (pełnego różnych narzędzi) do mojej $PATH
zmiennej:
# Add path to XAMPP PHP version
export XAMPP_PHP=/Applications/XAMPP/xamppfiles/bin
export PATH="$XAMPP_PHP:$PATH"
Niestety, nazywa się jedno z jego narzędzi HEAD
, które dzięki systemowi plików OSX bez rozróżniania wielkości liter koliduje z head
poleceniem Uniksa . XAMPP HEAD
jest całkowicie niezwiązany z head
(myślę, że wysyła żądanie HEAD HTTP).
Oczywiście chcę używać obu head
i XAMPP, więc po prostu zmieniłem kolejność zmiennych ścieżki:
export PATH="$PATH:$XAMPP_PHP"
To pozwala mi używać head
, ale teraz występuje kolizja między wersją PHP XAMPP (na przykład 5.5) a wstępnie zainstalowaną wersją PHP, która jest dostarczana z OSX (5.3). Ponieważ ścieżka do 5.3 jest na pierwszym miejscu, ostatecznie ma pierwszeństwo.
Mój plan na hackish rozwiązanie polegał na dodaniu pełnej ścieżki do pliku + nazwij po prostu wersję PHP XAMPP , a następnie dołącz resztę ścieżki po $PATH
:
export PATH="/Applications/XAMPP/xamppfiles/bin/php:$PATH:$XAMPP_PHP"
To nie wydaje się działać. Kiedy ponownie uruchamiam bash i sprawdzam php -v
, nadal działa na PHP 5.3 - wersja wbudowana. Czy w ogóle można w ogóle dodać określoną ścieżkę do pliku $PATH
?
$PATH
może składać się tylko z katalogów. Możesz po prostu dowiązać konkretny plik wykonywalny do istniejącego katalogu w twoim$PATH
.