Использовать команды под каталогом только для интерактивного использования?

У меня есть bin/ under $HOME . Это содержит расширенные версии общих команд. Следовательно, я не хочу, чтобы эти команды использовались скриптами, но только для использования в интерактивном режиме.

Я могу сделать это, чтобы добавить

 for f in ~/bin/* do alias "$(basename $f)"="$f" done 

к моему ~/.bash_profile ? Или есть другое решение?

3 Solutions collect form web for “Использовать команды под каталогом только для интерактивного использования?”

Вы также можете добавить строки следующим образом к вашему .bashrc , который устанавливает только PATH если вы находитесь в интерактивной оболочке.

 if [ "$PS1" ] then export PATH=~/bin:$PATH fi 

Вы можете использовать модули среды для ручного включения (загрузки) модуля, задающего нужный путь

 module load homebin 

Где будет выглядеть модуль homebin

 #%Module1.0 prepend-path PATH ~/bin 

http://modules.sourceforge.net

Это зависит от того, какая оболочка и (к сожалению) какая система вы используете. Например, Bash использует разные файлы запуска в зависимости от того, используется ли он как интерактивная или неинтерактивная оболочка, как описано в руководстве bash .

В принципе вы должны иметь возможность добавить export PATH=$HOME/bin:$PATH в ваш файл ~/.bashrc , который затем будет выполнен только для интерактивных оболочек без входа. На практике некоторые системы настроены так, что они читают ~/.bashrc также для неинтерактивных оболочек.

Связанные вопросы:

  • В чем разница между .bashrc, .bash_profile и .environment?
  • О .bash_profile, .bashrc и где должен быть написан псевдоним?
  • Псевдонимы в csh
  • Как использовать - как псевдоним?
  • Разница между псевдонимом в zsh и псевдонимом в bash
  • Переопределение псевдонима
  • как изменить `rm` на команду как` mv ~ / .trash`
  • Псевдоним команды для запуска в фоновом режиме
  • Как я могу показать результаты после того, как Bash читает одну полную строку ввода, но перед выполнением каких-либо команд на этой строке?
  • Псевдоним для перечисления верхнего файла и потребления каталога - самый короткий путь?
  • Невозможно увидеть псевдонимы
  • Что такое псевдоним?
  • Ошибка создания псевдонима для команды find
  • Linux и Unix - лучшая ОС в мире.