У меня есть однострочный файл .bashrc
в моем домашнем каталоге:
alias countlines='find . -type f -print0 | xargs -0 cat | wc -l'
Но это не создает псевдоним. Почему это может быть?
В OSX .bash_profile
используется вместо .bashrc
.
И да, файл .bash_profile
должен находиться в /Users/YourName/
(Другими словами, ~/.bash_profile
)
Например, /Users/Aaron/.bash_profile
.[bash_]profile
и .bashrc
могут использоваться как в OS X, так и в Linux. Первый загружается, когда оболочка является оболочкой входа в систему; последний, когда это не так. Реальное отличие состоит в том, что Linux запускает оболочку входа в систему, когда пользователь входит в графическую сессию, а затем, когда вы открываете терминальное приложение, эти оболочки являются оболочками, не входящими в систему; тогда как OS X не запускает оболочку при графическом входе в систему, а когда вы запускаете оболочку из Terminal.app, это оболочка входа в систему.
Если вы хотите, чтобы ваши псевдонимы работали как в логинах, так и в не-логинах (и вы обычно это делаете), вы должны поместить их в .bashrc и source .bashrc в ваш .bash_profile, с помощью строки, подобной этой:
[ -r ~/.bashrc ] && source ~/.bashrc
Это относится к любой системе, использующей bash.
Или создайте символическую ссылку с именем .bash_profile, указывающую на ваш .bashrc
ln -s .bashrc .bash_profile
Это не псевдоним, потому что .bash_profile
используется вместо .bashrc
в Mac OS X.
Итак, у вас есть два варианта:
Поместите псевдоним в ваш ~/.bash_profile
Или отправьте ваш .bashrc
из вашего .bash_profile
, добавив эту строку в .bash_profile
:
. ~/.bashrc
В Mac OS X Yosemite выполните следующую команду:
vi ~/.profile
Затем добавьте следующую строку:
source ~/.bashrc
Теперь сохраните и закройте .profile
, затем откройте новое окно терминала или просто запустите:
source ~/.profile
Смотрите также этот ответ. Работало на v10.10.3.