$ PATHにディレクトリ全体ではなく単一の実行可能ファイルを追加することは可能ですか?


9

OSXにXAMPPをインストールしました。デフォルトではbin$PATH変数にさまざまなユーティリティが満載された独自のディレクトリへのパスを追加しています。

# Add path to XAMPP PHP version
export XAMPP_PHP=/Applications/XAMPP/xamppfiles/bin
export PATH="$XAMPP_PHP:$PATH"

残念ながら、そのユーティリティの1つがと呼ばれますHEAD。これは、OSXの大文字と小文字を区別しないファイルシステムのおかげで、Unix headコマンドと衝突します。XAMPP HEADはまったく関係ありませんhead(HTTP HEADリクエストを発行すると思います)。

もちろん、headとXAMPPの両方を使用したいので、パス変数の順序を変更しました。

export PATH="$PATH:$XAMPP_PHP"

これによりを使用できますheadが、XAMPPのバージョンのPHP(たとえば、5.5)と、OSXに付属するプレインストールバージョンのPHP(5.3)との間に衝突が生じています。5.3へのパスが最初に来るので、それが優先されます。

ハックな解決策の私の計画は、完全なファイルパス+名前の前にXAMPPのバージョンのPHPを追加し、その後にパスの残りを追加することでした$PATH

export PATH="/Applications/XAMPP/xamppfiles/bin/php:$PATH:$XAMPP_PHP"

これは機能していないようです。bashを再起動して確認php -vしても、PHP 5.3(組み込みバージョン)のままです。特定のファイルパスを追加することも可能$PATHですか?


4
いいえ、$PATHディレクトリのみで構成されている場合があります。必要な特定の実行可能ファイルをの既存のディレクトリにシンボリックリンクするだけです$PATH
larsks

回答:


8

あなたの道にそれがecho "$PATH"表示さ/usr/local/binれていると仮定し、これがあなたの個人のラップトップであると仮定すると:

/usr/local/bin必要な実行可能ファイルを指すシンボリックリンクを作成します。

ln -s /Applications/XAMPP/xamppfiles/bin/php /usr/local/bin/php

共有コンピューターで他のユーザーに影響を与えたくない場合は、でPATHにカスタム拡張を設定することをお勧めします~/.bash_profile。私は自分自身を持っています:

$ grep PATH ~/.bash_profile 
export PATH="$PATH:$HOME/.bin"

次に、カスタムシンボリックリンク、スクリプトなどを配置し~/.bin、それらが期待どおりに実行されます(PATHの前半にあるシステムコマンドを上書きすることなく)。

.最初に置いた.binので、Finderで参照するときにディレクトリを表示する必要はありません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.