A menudo me encuentro cambiando entre Bash y Zsh, y usando la funcionalidad de búsqueda de historial para recuperar un comando.
Sin embargo, dado que Bash y Zsh tienen diferentes archivos de historial, a menudo encuentro que el comando que estoy buscando se ha ejecutado en el otro shell.
¿Hay alguna forma de compartir o sincronizar el historial entre los dos?
bash
zsh
command-history
synchronization
Andrei
fuente
fuente
Respuestas:
Si está utilizando los valores predeterminados para bash y zsh:
Ahora tiene el mismo archivo para el historial en ambos shells.
fuente
: 1399608924:0;hg diff
mientras que mi .bash_history tiene simplementehg diff
. Tal vez es porque estoy usando oh-my-zsh?unsetopt EXTENDED_HISTORY
para obtener un historial de solo comando compatible con bash.No es exactamente lo que estaba buscando, pero para importar de bash a zsh, puede usar este script node.js:
Fuente
fuente
En respuesta a Elad, las personas pueden tener archivos .bash_history que tienen una línea adicional antes de cada comando que comienza con (#) y tiene los dígitos finales siguientes (123456789), por ejemplo: # 123456789. Si su archivo bash_history tiene estas líneas adicionales, use esta versión modificada del código de Elad para procesar un historial con formato zsh limpio para usar. Gracias Elad por el código de conversión rápido.
fuente