У мене встановлено XAMPP в OSX, і він за замовчуванням передує шлях до власної bin
директорії (повно різноманітних утиліт) до моєї $PATH
змінної:
# Add path to XAMPP PHP version
export XAMPP_PHP=/Applications/XAMPP/xamppfiles/bin
export PATH="$XAMPP_PHP:$PATH"
Швидше , до жаль, одна з його утиліта називається HEAD
, що завдяки регістронезавісімого файлової системи OSX, в наштовхується з Unix head
командою . XAMPP HEAD
повністю не пов'язаний head
(я думаю, він видає HTTP HEAD запит).
Звичайно, я хочу використовувати обидва head
і XAMPP, тому я просто змінив порядок змінної контуру:
export PATH="$PATH:$XAMPP_PHP"
Це дозволяє мені використовувати head
, але зараз відбувається зіткнення між версією PHP XAMPP (наприклад, 5.5) та попередньо встановленою версією PHP, що постачається з OSX (5.3). Оскільки шлях до 5.3 поступає першим, він закінчує перевагу.
Мій план хакітного рішення полягав у тому , щоб додати повний шлях до файлу + ім'я лише PHP-версії XAMPP , а потім додати решту шляху після $PATH
:
export PATH="/Applications/XAMPP/xamppfiles/bin/php:$PATH:$XAMPP_PHP"
Це, здається, не працює. Коли я перезапускаю bash і перевіряю php -v
, він все ще знаходиться на PHP 5.3 - вбудованій версії. Чи взагалі можливо додати певний шлях до файлу $PATH
?
$PATH
може складатися лише з каталогів. Ви можете просто посилання на конкретний виконуваний файл, який ви хочете, у існуючий каталог у вашому$PATH
.