Quando colo um comando no prompt do bash, ele não está no histórico - como posso adicioná-lo?

6

Quando eu colo um comando no meu prompt do bash do OS X ou do Ubuntu usando Cmd V , o comando não está no histórico - mesmo que seja executado. O comando está no histórico apenas se eu digitá-lo.

Como habilitar esses comandos colados para o histórico do bash?

    
por Videk Rahul 20.02.2012 / 23:25

3 respostas

5

Existe uma diretiva 'ignorespace' que não salva comandos com espaço em branco no início da linha, o que é possível quando você está recortando e colando. Existe uma diretiva 'ignorados' que salva apenas a instância mais antiga de um comando, o que pode ser o caso aqui se você tiver um arquivo de histórico longo e tiver usado o comando antes. Mas, ambos não estão configurados na minha máquina OSX10.6, então, a menos que você ligou, provavelmente isso não explicará sua situação.

Outro cenário é que você se envolveu com outro usuário, o que poderia ser o caso se você estivesse cortando e colando comandos de algum outro lugar para consertar algo, então quando você abandonar esse usuário (normalmente usuário root), o histórico do bash não está disponível para você porque está no histórico do usuário privilegiado, não no seu.

    
por 21.02.2012 / 01:03
4

Você pode definir HISTCONTROL como algo diferente de ignorespace ou ignoreboth .

set HISTCONTROL=ignoredups funcionará.

    
por 19.10.2012 / 12:13
1

Eu tive esse problema no Konsole do KDE.

editando meu .bashrc para alterar

HISTCONTROL=ignoreboth

para

HISTCONTROL=ignoredups

consertou. Eu acho que eu deveria ter querido o prático "não adicione isso à minha história se eu colocar um espaço na frente" no passado, mas eu copio e colo muito entre terminais agora e estava ficando muito chato.

    
por 07.08.2015 / 03:06