$ PATHをechoすると、次のメッセージが表示されますUsers/myusername/.node_modules_global/bin:/Users/mac/.node_modules_global/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/mac/Library/Android/sdk/platform-tools:/platform-tools
。
いくつかのパスを削除したいが、コマンドを使用してファイルを開くと、vim /etc/paths
次のような結果が表示されます。
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
/etc/paths ファイルが $PATH 変数と異なりますか?
ベストアンサー1
/etc/paths
$PATH
シェルプロセスの一部を設定するために使用されます。新しい端末ウィンドウを開くと起動し、複数のbash
起動スクリプトが実行されます。/etc/profile
AND ~/.bash_profile
OR存在しない場合~/.bash_login
ORまたは存在しない場合~/.profile
。このスクリプトは$PATH
。
/etc/profile
実行されるタスクの1つは、内のすべてのファイルを/usr/libexec/path_helper
読み取り、その内容を追加することです。ただし、これは開始点にすぎず(存在する場合)、独自の起動スクリプトを追加、編集、完全に置き換えることができます。/etc/paths
/etc/paths.d
$PATH
$PATH
/etc/paths
起動スクリプト(および/または実行中のエントリ)が、「Users / myusername / .node_modules_global / bin:/ Users / mac / .node_modules_global / bin:」からatに多くのエントリを追加しているようです。先頭$PATH
に (このディレクトリが最初に検索されることを意味します) と ":/Users/mac/Library/Android/sdk" /platform-tools:/platform-tools" が最後に追加されます。何をすべきか正確に知りたい場合は、起動スクリプトを見てください。
ただし、この設定プロセスは$PATH
bashの「ログイン」シェルでのみ機能します。 bashシェルによって実行されるすべてはbashシェル$PATH
から継承されるため、本質的に同じ内容を持つことができます。 bash 非ログインシェルは、若干異なる設定プロセスに従います。他のシェルとシェルでまったく始まらないもの(クローン作業など)は全く違う$PATHs
。