Quando abro um terminal na minha máquina Fedora (ou ssh nele), recebo várias linhas como esta antes do prompt:
declare -x CVS_RSH="ssh"
declare -x DISPLAY="localhost:10.0"
declare -x G_BROKEN_FILENAMES="1"
declare -x HISTSIZE="1000"
…
O quê está causando isto? Isso pode ter ocorrido depois que eu editei o meu .bashrc
, mas acredito que tudo que mudei foi adicionar outro caminho de diretório para "PATH =".
Atualização (respondendo à resposta de heavyd ): Eu cumprimentei e ~/.bashrc
, por "declarar", não encontrei nada.~/.bash_profile
/etc/bashrc
Eu olhei /etc/bashrc
porque ~/.bashrc
contém o seguinte:
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
Não vejo nada nos scripts ~/.bashrc
ou, ~/.bash_profile
exceto o código acima, "PATH =…", "exportar ..." e "alias ...".
Quando executo meu .bashrc
script (usando " bash ~/.bashrc
") ou .bash_profile
script, vejo a lista de "declara", mas nenhuma mensagem de erro. (Não vejo nada se eu correr /etc/bashrc
.)
~./bash_profile
é muito simples:
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
Resolvido : Obrigado , andrew.n , sua sugestão me ajudou a encontrá -lo. Acontece que todas essas linhas "declare -x ..." são exibidas se uma é executada export
(por si só), e eu acidentalmente inseri um CR entre "export" e "PATH = ..." no meu .bashrc
.
fonte
Respostas:
Corre
env - HOME="$HOME" /bin/bash --login -xv 2>&1 | tee foo
para iniciar o bash no modo detalhado. Isso imprimirá todas as linhas do arquivo de inicialização à medida que forem lidas e todas as linhas do arquivo de inicialização à medida que forem executadas, copiando a saída para um arquivo chamado
foo
. Então você pode olhar emfoo
ver o que está causandodeclare -x
a ser chamado.fonte
Descobrimos que muitas
declare ...
declarações são o resultado deexport
serem executadas em algum lugar sem argumento.Encontrei uma nova linha acidental no meu
.bashrc
:O que deveria ter sido
fonte
Sim, é provável que seja proveniente do seu .bashrc porque você o editou. Você pode ter introduzido um erro de sintaxe no script que pode causar a saída.
Você pode garantir que essas linhas existam no seu .bashrc digitando:
Você deve ver pelo menos essas 4 linhas impressas no console. Você também pode tentar executar o script .bashrc no prompt e verificar se há algum erro:
fonte