どのUnixコマンドで見つかったホームディレクトリパスを追加するには?

どのUnixコマンドで見つかったホームディレクトリパスを追加するには?

node.jsカスタムの場所にインストールし、その場所を$PATHファイルに追加しました.profile

$ node --version
v0.6.2
$ which node
$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:~/Unix/homebrew/bin
$ cat ~/.profile
export  PATH="$PATH:~/Unix/homebrew/bin"

Node.js自体はうまく動作します。問題は、whichコマンドによってリストされないことです。だからnpm今はインストールできません。npmインストールファイルが見つかりません。バイナリを検索可能node.jsにするにはどうすればよいですか?nodewhich

ベストアンサー1

あなたの回線は次のいずれか.profileでなければなりません。

export  PATH="$PATH:$HOME/Unix/homebrew/bin"
PATH="$PATH:$HOME/Unix/homebrew/bin"
PATH=$PATH:$HOME/Unix/homebrew/bin
PATH=$PATH:~/Unix/homebrew/bin

その文字が単語の最初の文字であり、引用されていない~場合にのみホームディレクトリに展開されます。作成した内容は~二重引用符の間にあるため、拡張されません。と言ってもシェル語の先頭ではないので拡張されませんexport "PATH=$PATH:"~/Unix/homebrew/bin~

PATH同様の変数に値を書き込むように設計された特別な種類の割り当てがあります。~割り当てを示す等号の直後にある場合、または割り当ての右側の a の直後に~ある場合は展開されます。:単純な割り当てにのみこの種の割り当てがあり、export PATH=…これは計算されません(文字を含むパラメータを持つ組み込みexport関数への呼び出しです=)。

PATHここではすでにエクスポートしているため、エクスポートする必要はありません。変数の値を変更するときにそれを呼び出す必要はありませんexport(OSXまたはLinuxにない古いBourneシェルを除く)。また、課題(やはりexport計算しない)では右側に二重引用符が必要ないため、スペースを含めてPATH=$PATH:~/Unix/homebrew/bin$PATH安全です。

おすすめ記事