Actualmente tengo zsh configurado de tal manera que el historial de comandos se comparte entre todas las sesiones de inmediato.
Digamos que tengo un emulador de terminal abierto con dos pestañas, cada una con una sesión zsh, A1 y A2. Si ingreso ls -la en A1, y luego voy a A2 y presiono la tecla de flecha hacia arriba, veré ls -la en el símbolo del sistema.
Me gustaría cambiarlo para que las sesiones no compartan el historial de comandos entre sí, aunque cuando comience una nueva sesión, obtiene todo el historial anterior de todas las sesiones anteriores.
zsh
command-history
Art
fuente
fuente
Respuestas:
Probablemente te hayas
INC_APPEND_HISTORY
puesto.La
INC_APPEND_HISTORY
opción, desdeman zshoptions
:La opción que quieres es
APPEND_HISTORY
:Puede leer sobre estas opciones en el
man zshoptions
,man zshall
o en línea aquí .Para configurarlos, en su
~/.zshrc
o similar, debe tener:Tenga en cuenta que, si está usando oh-my-zsh de forma predeterminada, creo que
INC_APPEND_HISTORY
se usa. No estoy 100% seguro de qué manera se cargan las cosas, pero si laoh-my-zsh
opción anula la que ha configurado~/.zshrc
, puede jugar con ella en~/.oh-my-zsh/lib/history.zsh
fuente
echo unsetopt INC_APPEND_HISTORY >~/.oh-my-zsh/custom/history.zsh
Para agregar a la respuesta aceptada, si usa
oh-my-zsh
, probablemente tenga laSHARE_HISTORY
opción habilitada de forma predeterminada.Para lograr la separación entre los shells en ejecución + el historial completo combinado en un terminal recién abierto, debe comentar o eliminar la siguiente línea:
desde
~/.oh-my-zsh/lib/history.zsh
fuente
~/.antigen/repos/https-COLON--SLASH--SLASH-github.com-SLASH-robbyrussell-SLASH-oh-my-zsh.git/lib/history.zsh
unsetopt share_history
el.zshrc
afteroh-my-zsh
. Documentado aquí .