У меня есть однострочный файл .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.