Mantenha todos os comandos no histórico bash?

4

Eu tenho a pergunta oposta a desta . Como faço para manter todos os comandos no histórico bash?

No Ubuntu desde há algum tempo, o padrão para o bash é esquecer os comandos com código de saída sem sucesso. Isso é incrivelmente estúpido e eu iria com a resposta aceita para a questão relacionada.

Usuário Unix @goldilocks apontou que talvez eu esteja apenas confuso com o ignoreprocedimentos diretos .

defina pastie

    
por Prof. Falken 06.12.2012 / 11:01

2 respostas

3

Eu suspeito que você não esteja fazendo exatamente o que acha que está fazendo. Corra frobiz:, então veja se isso está no seu histórico. Frobiz normalmente deveria falhar - não existe tal comando. Mas será em sua história. Eu suspeito que você está tentando algo como ls *! [0-9], que irá falhar com

ls !(*.[0-9])
base ![0-9]": event not found

A coisa é; quando falhando assim, o bash nunca tenta executar o comando, então ele não é colocado no histórico. IGNOREBOTH é irrelevante para isso - funciona como anunciado. Tente escapar do! (que o shell está tomando para se referir, ironicamente, a um comando na história) - por exemplo:

ls \! ...

E provavelmente funcionará como esperado.

    
por 01.09.2014 / 12:41
4

Acho que você está confuso por causa de HISTCONTROL=ignoreboth . Veja aqui: link

    
por 06.12.2012 / 13:51