Цей рядок у вашому .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
і подібних змінних. Якщо ~
тільки після знака рівності , що позначки призначення, або якщо ~
це тільки після того, як :
у правій частині присвоювання, то це розширений. Лише звичайні призначення мають це розповсюдження, export PATH=…
не рахується (це дзвінок до export
вбудованого, який, як буває, має аргумент, що містить =
символ).
Тут вам не потрібно експортувати, PATH
оскільки він вже експортується. Вам не потрібно дзвонити, export
коли ви зміните значення змінної (за винятком старих оболонок Борна, яких ви не знайдете на OSX або Linux). Крім того, у призначенні (знову ж таки, export
не рахується) вам не потрібні подвійні лапки навколо правої частини, тому PATH=$PATH:~/Unix/homebrew/bin
це безпечно, навіть якщо $PATH
містить пробіли.
which
тут не винна;~
повинні були розширені у визначенніPATH
. У диваку є дивацтво, що воно~
все одно розширюєтьсяPATH
, тому дві кривди роблять правильні, подібні.