notebook - ipython: imprime el historial completo(no solo la sesión actual)
jupyter notebook mac shortcuts (2)
en ipython
, puedo usar %hist
o %history
para imprimir el historial reciente, pero esto solo imprime el historial de la sesión actual.
Me gustaría imprimir todo el historial, similar al comando bash history
.
Lo que intento hacer es obtener un historial completo, de modo que pueda buscar con expresiones regulares, ver qué comandos se siguen después de los comandos especificados, etc.
Hablando de historia, ¿también puede imprimir códigos de tiempo?
NOTA LATERAL : En bash, he escrito una secuencia de comandos simple que imprime el historial y puedo grep para las palabras clave. Veo momentos cuando se ejecutaron ciertos comandos. Puedo especificar -A n
o -B n
, donde n
es un número de líneas AFTER
o BEFORE
un comando dado. Esto es muy útil, porque puedo encontrar fácilmente lo que hice cuando, y lo que siguió, ...
Estoy buscando algo similar para ipython
En ipython
ingrese:
%history -g
No imprime códigos de tiempo, pero sí imprime el número de sesión / línea.
Primero use %hist -o -g -f ipython_history.md
para dar salida al historial (entrada y salida) a un archivo de texto. ( http://ipython.readthedocs.io/en/stable/interactive/magics.html#magic-history )
Luego puede usar la función get_session_info
para recuperar la fecha y la hora de la sesión que le interesa. ( http://ipython.readthedocs.io/en/stable/api/generated/IPython.core.history.html?highlight=hist#IPython.core.history.HistoryAccessor.get_session_info )
profile_hist=IPython.core.history.HistoryAccessor(profile=''default'')
profile_hist.get_session_info(100)
Esto imprimirá algo así como
(100, datetime.datetime(2018, 2, 13, 19, 8, 30, 40691), None, None, '''')
Esto significa que la sesión 100 comenzó el 13 de febrero de 2018. 19 :: 8 :: 30 pm.