Bashで実行される実行可能ファイルの順序

Bashで実行される実行可能ファイルの順序

testBashでコマンドを実行すると、組み込みtestユーティリティ(条件式評価)が開始されます。

$ type test
test is a shell builtin
$ type -a test
test is a shell builtin
test is /usr/local/bin/test
test is /usr/bin/test
$ 

しかし、上記の出力からわかるように、type -a test/usr/local/binディレクトリに別のものがあり、/ testusr/binディレクトリに別のものがあります。組み込みコマンドが常に優先され、残りは$ PATH変数のディレクトリの順序に依存するように、実行可能ファイルの順序はどうなりますか?また、実行可能ファイルの開始順序を変更できますか?たとえば、test/usr/bin/test と入力すると bash-buildin の代わりに起動されますかtest

ベストアンサー1

最も高い優先順位は、bashエイリアス、特別な組み込み(POSIXモードでのみ)、関数、組み込み、です$PATH

内蔵機能を実行するにはを使用してくださいbuiltin test
外部アプリケーションを実行するには、明示的なパスを使用してください/bin/test
関数とエイリアスを無視するには、を使用しますcommand test
エイリアスを無視するには、\testまたは他の種類の拡張機能を使用してください。

内蔵を無効/有効にできますenable test


(以下の説明に基づいて更新されdisableますenable

おすすめ記事