Come posso impostare la cronologia dei terminali di Mac OS X in modo che si comporti come linux quando uso le frecce su / giù?


12

Mi piacerebbe che l'app del terminale mac os scorresse la cronologia dei miei comandi nello stesso modo in cui funziona in Linux, se possibile. Attualmente, se premo la freccia su nel terminale, scorrerà tutti i miei comandi recenti, anche se gli ultimi 50 erano lo stesso comando esatto . Sulla maggior parte dei sistemi Linux che ho usato, questo comportamento scorrerà all'indietro nella cronologia dei comandi, ma soprattutto salterà i comandi duplicati . Questo comportamento è possibile nell'app per terminale Mac OS X o devo utilizzare un'app per terminale diversa? Grazie.


2
Questa non è l'azione dell'app Terminale ma come hai impostato la tua shell - probabilmente bash vedi la sua documentazione per la cronologia
user151019

Dai un'occhiata anche a iTerm2. IMO è uno strumento migliore. iterm2.com
Harv,

Risposte:


11

Mark che ha commentato le mie domande sopra era corretto. Questa è un'impostazione bash. Se aggiungi quanto segue al tuo ~/.bash_profilescript, otterrai questo comportamento.

HISTCONTROL=ignoredups

Puoi anche ignorare tutte le righe che iniziano con uno spazio:

HISTCONTROL=ignorespace

Oppure fai entrambe le cose, usando:

HISTCONTROL=ignoreboth

1
Rigorosamente meglio aggiungere a .bashrc e rendere sorgente .bash_profile .bashrc - consultare il manuale di bash
user151019

3

Supponendo che stai usando bash allora

HISTCONTROL=ignoreboth

o

HISTCONTROL=ignoreboth:erasedups

in uno dei tuoi file bash rc.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.