gmx
私は次の2つのパスに対してコマンドを呼び出しました。
/usr/local/bin/gmx
そして
/Users/alexamil/.nvm/versions/node/v9.2.0/bin/gmx
そのうちの1つだけbashハッシュを削除するにはどうすればよいですか?
私が実行した場合:
hash -d gmx
どちらが削除されますか?どちらも削除しますか、それとも最新の値のみを削除しますか?特定のアイテムを削除するのに機能しますか?
hash -d "/Users/alexamil/.nvm/versions/node/v9.2.0/bin/gmx"
答え1
gmx
Bashは名前ごとに1つのパスだけを覚えているので(最大)1つのパスしか持っていません。実行するとどちらかを確認できます。
hash -t gmx
走る
hash -d gmx
すべての項目gmx
(でマーク)が削除されます。hash -t
次回それを実行しようとすると、gmx
シェルはにリストされているディレクトリでそれを見つけ、見つかったPATH
最初のディレクトリをハッシュとして保存します。
特定の値を削除することはできませんが、自分の値ではない値を含む特定の値を強制的に適用できますPATH
。
hash -p /usr/local/bin/gmx gmx
/usr/local/bin/gmx
これにより、入力時にシェルが実行されますgmx
。
バラよりバッシュマニュアルもっと学ぶ。