Você também pode adicionar as linhas da seguinte forma ao seu .bashrc
, que define apenas o PATH
se você estiver em um shell interativo.
if [ "$PS1" ]
then
export PATH=~/bin:$PATH
fi
Eu tenho um bin/
sob $HOME
. Isto contém algumas versões aumentadas de comandos comuns. Portanto, não quero que esses comandos sejam usados por scripts, mas apenas para serem usados em uso interativo.
É o melhor que posso fazer para adicionar
for f in ~/bin/*
do
alias "$(basename $f)"="$f"
done
para o meu ~/.bash_profile
? Ou existe outra solução?
Você também pode adicionar as linhas da seguinte forma ao seu .bashrc
, que define apenas o PATH
se você estiver em um shell interativo.
if [ "$PS1" ]
then
export PATH=~/bin:$PATH
fi
Você poderia usar módulos de ambiente para habilitar manualmente (carregar) um módulo definindo o caminho desejado
module load homebin
Onde o módulo homebin se parece com
#%Module1.0
prepend-path PATH ~/bin
Depende de qual shell e (infelizmente) qual sistema você está usando. O Bash, por exemplo, usa diferentes arquivos de inicialização, dependendo se ele é usado como um shell interativo ou não interativo, conforme explicado no bash manual .
Em princípio, você deve poder adicionar export PATH=$HOME/bin:$PATH
ao seu arquivo ~/.bashrc
, que será executado apenas para shells interativos que não sejam de login. Na prática, alguns sistemas são configurados de tal forma que eles lêem ~/.bashrc
também para shells não interativos.
Perguntas relacionadas:
Tags alias shell-script