Como posso definir o histórico do terminal do Mac OS X para agir como linux ao usar as setas para cima / para baixo?


12

Gostaria que o aplicativo de terminal do Mac OS percorresse meu histórico de comandos da mesma maneira que funciona no Linux, se possível. Atualmente, se eu pressionar a seta para cima no terminal, ela percorrerá todos os meus comandos recentes, mesmo que os últimos 50 sejam o mesmo comando exato . Na maioria dos sistemas Linux que usei, esse comportamento retrocede o histórico de comandos, mas o mais importante é que ele ignora comandos duplicados . Esse comportamento é possível no aplicativo de terminal do Mac OS X ou preciso usar um aplicativo de terminal diferente? Obrigado.


2
Esta não é a ação do aplicativo Terminal, mas como você tiver configurado o shell - provavelmente o bash ver sua documentação para a história
user151019

Verifique também o iTerm2. IMO é uma ferramenta melhor. iterm2.com
Harv

Respostas:


11

Mark que comentou minhas perguntas acima estava correto. Esta é uma configuração do bash. Se você adicionar o seguinte ao seu ~/.bash_profilescript, obterá esse comportamento.

HISTCONTROL=ignoredups

Você também pode ignorar todas as linhas que começam com um espaço:

HISTCONTROL=ignorespace

Ou faça as duas coisas usando:

HISTCONTROL=ignoreboth

11
Estritamente melhor adicione ao .bashrc e faça o .bash_profile source .bashrc - consulte o manual do bash
user151019

3

Supondo que você esteja usando o bash então

HISTCONTROL=ignoreboth

ou

HISTCONTROL=ignoreboth:erasedups

em um dos seus arquivos bash rc.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.