w ipython
, mogę użyć %hist
lub %history
wydrukować najnowszą historię, ale to wyświetla tylko historię z bieżącej sesji.
Chciałbym wydrukować całą historię, podobnie jak history
robi to polecenie bash .
To, co próbuję zrobić, to uzyskać pełną historię, aby móc następnie wyszukiwać za pomocą wyrażenia regularnego, zobaczyć, jakie polecenia nastąpiły po określonych poleceniach i tak dalej
A propos historii, czy może też drukować kody czasowe?
UWAGA BOCZNA : W bashu napisałem prosty skrypt, który wyświetla historię i mogę go grepować w poszukiwaniu słów kluczowych. Widzę chwile, kiedy niektóre polecenia zostały wykonane. Mogę podać -A n
lub -B n
, gdzie n
to liczba linii AFTER
lub BEFORE
dana komenda. Jest to bardzo przydatne, ponieważ mogę łatwo znaleźć to, co zrobiłem, kiedy i co nastąpiło ...
Szukam czegoś podobnego ipython
~/.ipython/profile_default/
. Tam znajdziesz tabele:sessions
(ze znacznikami czasu)history
ioutput_history
.ipython
?%history -g
pokaże ci to wszystko.-g
przeszukuje historię i jeśli nie podasz jej żadnego wzorca, otrzymasz wszystko.%history -g -f filename
aby zapisać go do pliku.Odpowiedzi:
W
ipython
wejściu:Nie drukuje kodów czasowych, ale numer sesji / linii.
źródło
Najpierw użyj,
%hist -o -g -f ipython_history.md
aby wyświetlić historię (dane wejściowe i wyjściowe) do pliku tekstowego. ( http://ipython.readthedocs.io/en/stable/interactive/magics.html#magic-history )Następnie możesz skorzystać z
get_session_info
funkcji, aby pobrać datę i godzinę interesującej Cię sesji. ( 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)
To wydrukuje coś takiego
(100, datetime.datetime(2018, 2, 13, 19, 8, 30, 40691), None, None, '')
Oznacza to, że sesja 100 rozpoczęła się 13 lutego 2018 roku o 19:08:30.
źródło
Oto rozszerzenie Firefoksa znalezione przez @larssend : SQLite Manager
Posiada GUI do otwierania pliku bazy danych i wydawania różnych poleceń sqlite z menu. Dodatkową korzyścią jest zobaczenie poleceń SQL, które wygenerowały dane wyjściowe. Oto moje dla mojego ipythona
%history
w~/.ipython/profile_default/history.sqlite
:Ma nawet menu do generowania wykresów (punktowych, liniowych, słupkowych itp.) Na podstawie danych!
źródło