prompt do bash se tornou um simples “#”

0

Até que eu entrei hoje, como sempre, meu prompt do bash era o padrão "username @ currpath #". Mas hoje, para mim, é apenas "#". Se eu fizer login como root, é normal. Bashrc parece bem (em comparação com outras máquinas "." echo $ PS1 "me dá, apenas" # ". O que aconteceu e como faço para corrigir isso?

Também notei que "ifconfig" desapareceu. Ele funciona para root, mas meu $ PATH parece normal.

OUTRA COISA (horas adicionadas após a postagem): as setas para cima e para baixo usadas para percorrer o histórico de comandos. Agora eles dão uma saída como essa "^ [[A ^ [[B" (para cima e para baixo), mas meu local e teclado parecem estar configurados corretamente. Não tenho certeza se isso está relacionado ao problema de prompts, mas mudou ao mesmo tempo.

    
por lunix 24.07.2014 / 07:48

6 respostas

1

Eu estou supondo que há um problema com o arquivo .bashrc do seu usuário.

Tente copiar o arquivo .bashrc padrão para seu diretório pessoal:

cp /etc/skel/.bashrc ~/.bashrc

Depois de copiar o arquivo, reinicie o computador.

    
por John Vrbanac 24.07.2014 / 07:54
1

Parece que você errou com o PS1.

link

    
por rɑːdʒɑ 24.07.2014 / 07:56
0

Talvez você tenha alterado seu shell de usuário de / bin / bash para outra coisa. Enquanto estiver logado sob sua conta normal, execute

chsh

Selecione /bin/bash quando solicitado.

    
por thomasrutter 24.07.2014 / 08:03
0

Embora eu não possa dizer por que isso aconteceu (PS1 se tornando #), você pode simplesmente configurar com esses caracteres especiais:

  • \ a : um caractere de campainha ASCII (07)
  • \ d : a data no formato "Dia da semana do mês" (por exemplo, "Ter 26 de maio")
  • \ D { format } : o formato é passado para strftime (3) e o resultado é inserido na string de prompt; um formato vazio resulta em uma representação de hora específica de localidade. As chaves são necessárias.
  • \ e : um caractere de escape ASCII (033)
  • \ h : o nome do host até o primeiro '.'
  • \ H : o nome do host
  • \ j : o número de tarefas atualmente gerenciadas pelo shell
  • \ l : o nome da base do nome do terminal do shell
  • \ n : nova linha
  • \ r : retorno de carro
  • \ s : o nome do shell, o nome de base de $ 0 (a parte após a barra final)
  • \ t : a hora atual no formato de 24 horas HH: MM: SS
  • \ T : a hora atual no formato HH: MM: SS de 12 horas
  • \ @ : a hora atual em formato de 12 horas am / pm
  • \ A : a hora atual no formato HH: MM de 24 horas
  • \ u : o nome de usuário do usuário atual
  • \ v : a versão do bash (por exemplo, 2.00)
  • \ V : o lançamento do bash, versão + nível de patch (por exemplo, 2.00.0)
  • \ w : o diretório de trabalho atual, com $ HOME abreviado com um til
  • \ W : o nome da base do diretório de trabalho atual, com $ HOME abreviado com um til
  • \! : o número do histórico deste comando
  • \ # : o número do comando deste comando
  • \ $ : se o UID efetivo for 0, a #, caso contrário, um $
  • \ nnn : o caractere correspondente ao número octal nnn
  • \\: uma barra invertida
  • \ [: inicia uma sequência de caracteres não imprimíveis, que pode ser usada para incorporar uma sequência de controle de terminal ao prompt
  • \] : encerra uma sequência de caracteres não imprimíveis

Fonte

    
por Paulius Šukys 24.07.2014 / 08:36
0

A sequência de execução para .bash_profile, .bashrc, .bash_login, .profile e .bash_logout é a seguinte,

      execute /etc/profile
      IF ~/.bash_profile exists THEN
         execute ~/.bash_profile
      ELSE
        IF ~/.bash_login exist THEN
          execute ~/.bash_login
        ELSE
          IF ~/.profile exist THEN
          execute ~/.profile
          END IF
        END IF
      END IF

Para estar no lado mais seguro, atribua PS1 em todos esses arquivos. Isso certamente deve resolver o problema.

Visite link para saber mais informações sobre isso

    
por Tingrammer 24.07.2014 / 12:02
0

Eu digitei "/ bin / bash " e- VIOLA- normalidade. Agora - onde o shell bash (ou qualquer) é invocado no login do usuário? Eu editei o arquivo "passwd", que o corrigiu. Eu devo ter modificado usuários em uma GUI que apagou a configuração do shell para alguns usuários.

Obrigado a todos por me apontar na direção certa!

    
por lunix 24.07.2014 / 12:54