Pracując w konsoli na wielu terminalach możemy chcieć szybko zsynchronizować historię pomiędzy nimi. Pozwoli to na pracę w nowym terminalu z zachowaniem historii z poprzednich.

Aby włączyć synchronizację historii pomiędzy powłokami, należy edytować plik ~/.bashrc w swoim ulubionym edytorze tekstowym.

Dopisujemy tam następujące polecenia:

shopt -s histappend
PROMPT_COMMAND="history -n; history -a"
unset HISTFILESIZE
HISTSIZE=2000

Polecenia te zwiększą limit linii historii z domyślnych 500 do 2000. Przy każdym wydanym poleceniu, historia zostanie zsynchronizowana i będzie dostępna dla pozostałych terminali.

  • zsh fajnie działa, bo dopisuje historię w kolejności zamykania swoich sesji ^^ .

  • Sławek

    Nie lepiej wrzucić history -n; history -h do operacji zamykania sesji?

  • Greg

    @Sławek, można, ale wyeedy nie masz synchronizacji na bieżąco pomiędzy sesjami. W tym przypadku masz.