O terminal às vezes não consegue encontrar executáveis no diretório local [duplicado]

1

Eu posso abrir meu emulador de terminal através de um atalho de teclado ou através do localizador de aplicativos que executa o comando exo-open --launch TerminalEmulator . Meu terminal é iniciado e posso cd para qualquer diretório e executar quaisquer binários localizados em qualquer diretório bin em meu sistema.

Mas sempre que eu inicio clicando com o botão direito do mouse em qualquer diretório em thunar e usando a opção Abrir terminal aqui às vezes não consegue encontrar nenhum executável no meu diretório local diretório binários ( ~/.local/bin/ ). Basta colocar:

  • Abra o terminal usando o localizador de aplicativos, o lançador de comandos, o atalho de teclado,… → pode encontrar executáveis locais.
  • Abra o terminal através do menu de contexto no Thunar → Às vezes não pode encontrar executáveis locais.

Isso acontece em qualquer terminal ( xfce4-terminal , xterm , gnome-terminal ). Minha máquina está executando o Fedora 20 XFCE com thunar versão 1.6.3-2.

Eu não posso dizer com certeza desde quando isso começou, porque já faz algum tempo, mas isso se tornou mais frequente nos últimos dias. Além disso, eu tenho que mencionar que uma vez que meus terminais podem encontrar executáveis no meu diretório bin local e eu adicionar um novo, ele não irá encontrá-los novamente, até que algum tempo passe - não importa se foi lançado via thunar do menu de contexto ou não.

Alguém já notou esse comportamento também? Alguém pode esclarecer o que está acontecendo aqui?

Atualização:

Percebi que meu arquivo .bash_profile é o que adiciona meu diretório bin local à variável $PATH :

PATH=$PATH:$HOME/.local/bin:$HOME/bin
export PATH

E quando eu executo um login shell (não iniciado através do menu de contexto ), ele executa .bashrc e, em seguida, .bash_profile , então eu movi esses duas linhas do meu .bash_profile para o meu .bashrc e agora tudo funciona bem.

Então, a questão agora é: por que o comando do menu de contexto (que é o mesmo que o comando normal ) faz com que meu terminal seja lançado apenas como interativo e não como um terminal login ?

    
por arielnmz 30.06.2014 / 08:24

1 resposta

1

Eu diria que você está correndo para uma boa e velha luta clássica. Para ~ / .bashrc ou para ~ / .profile

Checke seu $ PATH em ambos.

Leia e entenda link Ele pode responder sua pergunta.

Basicamente, o seu login quando você iniciar um emulador de terminal, mas não quando você iniciar a partir do thunar. Isso cria um ambiente diferente. Não há uma "resposta certa" para consertá-lo, e é muito parecido com o vim ou o nano, mas eu costumo apenas criar um arquivo comum em TODOS eles para configurar meus ambientes.

    
por 30.06.2014 / 13:18