Jak ustawić historię terminali Mac OS X, aby działała jak linux podczas używania strzałek góra / dół?


12

Chciałbym, aby aplikacja terminalowa systemu Mac OS przewijała historię poleceń w ten sam sposób, w jaki działa w systemie Linux, jeśli to możliwe. Obecnie, jeśli popchnę strzałkę w górę w terminalu, przewinie ona każde moje ostatnie polecenie, nawet jeśli ostatnie 50 było dokładnie tym samym poleceniem . W większości systemów Linux, z których korzystałem, zachowanie to przewija do tyłu historię poleceń, ale w większości ważnych pomija duplikaty poleceń . Czy takie zachowanie jest możliwe w aplikacji terminalowej Mac OS X, czy też muszę korzystać z innej aplikacji terminalowej? Dzięki.


2
To nie jest działanie aplikacji Terminal, ale to, jak skonfigurowałeś swoją powłokę - prawdopodobnie bash zapoznaj się z jej dokumentacją historii
user151019,

Sprawdź także iTerm2. IMO to lepsze narzędzie. iterm2.com
Harv

Odpowiedzi:


11

Mark, który skomentował moje pytania powyżej, był poprawny. To ustawienie bash. Jeśli dodasz do ~/.bash_profileskryptu następujące elementy, otrzymasz takie zachowanie.

HISTCONTROL=ignoredups

Możesz również zignorować wszystkie wiersze rozpoczynające się spacją:

HISTCONTROL=ignorespace

Lub wykonaj obie te czynności, używając:

HISTCONTROL=ignoreboth

1
Ściśle lepiej dodaj do .bashrc i stwórz źródło .bash_profile .bashrc - patrz instrukcja bash
user151019

3

Zakładając, że używasz wtedy bash

HISTCONTROL=ignoreboth

lub

HISTCONTROL=ignoreboth:erasedups

w jednym z plików bash rc.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.