variável de ambiente 'TERM' não exportada de '.profile'?

1

Eu tenho isso no meu .profile (estou executando o Ubuntu 12.04):

export TERM="xterm-256color"

A variável parece não ser exportada ou ser invariavelmente posteriormente sobrescrita como TERM="xterm" .

Um teste com o GnomeTerminal:

$ gnome-terminal --command=sh
$ echo $TERM
> xterm

$ gnome-terminal --command=bash
$ echo $TERM
> xterm

$ gnome-terminal --command=zsh
$ echo $TERM
> xterm

Pelo menos, isso não é devido ao shell. Isso é devido a gnome-terminal ?

Outro teste com o Xterm:

$ xterm sh
$ echo $TERM
> xterm

$ xterm bash
$ echo $TERM
> xterm

$ xterm zsh
$ echo $TERM
> xterm

Pelo menos, isso não é especificamente devido ao GnomeTerminal, como é o mesmo com o Xterm. Eu tenho que adicionar o export TERM="xterm-256color" nos perfis do shell.

Eu tive um problema semelhante ao exportar LD_LIBRARY_PATH de .profile , que foi sempre sobrescrito (não me lembro como resolvi isso).

O que substitui / impede a exportação da variável de ambiente TERM de .profile e por quê?

Notas (atualização)

Após o comentário de Muru, eu tentei isso: gnome-terminal --command="[sh/bash/zsh] -l" e xterm -ls [sh/bash/zsh] (por [sh/bash/zsh] quero dizer substituir por sua vez), para obter um shell de login (mas não pediu uma senha, engraçado), e o resultado é diferente: recebo TERM="xterm-256color" com Sh e Bash, mas não com Zsh, com o qual sempre recebo TERM="xterm" .

    
por Hibou57 14.08.2014 / 21:52

1 resposta

1

~/.profile é normalmente executado por shells de login, portanto sh , bash e zsh não processam quando são chamados normalmente. Invocá-los usando a opção -l torna-os shells de login e resulta no fornecimento de ~/.profile . zsh não usa ~/.profile , mas ~/.zprofile , devido a incompatibilidades com outra sintaxe sh .

A maioria dos terminais tem a opção de executar shells como shells de login (pelo menos o GNOME Terminal, o XFCE4 Terminal e o Terminator). Você pode habilitar isso (se você fizer alterações frequentes no profile s ou simplesmente efetuar logout e login novamente.

Leitura adicional:

por muru 14.08.2014 / 22:16