다른 세션에서 파일을 복사했는데 .zsh_history
확인하고 싶습니다. 일반적으로 표준 파일을 확인하는 경우 사용자 정의 날짜 형식을 지정할 수 있는 ~/.zsh_history
zsh 내장 명령을 사용합니다 .history
$ history -t '(%a) %Y-%b-%d %H:%M' 0
90 (Sat) 2021-Sep-11 17:24 cd ..
91 (Sat) 2021-Sep-11 17:24 ls
92 (Sat) 2021-Sep-11 17:26 run-help history
History 명령에는 읽을 파일을 지정하는 옵션이 없는 것 같습니다. 간단히 파일을 분류할 수 있지만 사람이 읽을 수 없는 날짜 형식(시대?)이 표시됩니다.
: 1631327094:0;echo
: 1631340742:0;true
zsh의 일부 기능을 사용하여 기록 파일을 해석하려면 어떻게 해야 하나요? 또는 이것이 가능하지 않은 경우 간단한 Python 스크립트를 사용하여 위의 기록 예제와 유사한 날짜 형식을 볼 수 있도록 어떻게 해석할 수 있나요?
답변1
타임스탬프는 표준 형식으로 표시됩니다.유닉스 시간: 에포크(예: 1970-01-01) 이후의 초 수입니다.
% TZ=Pacific/Kiritimati date +'(%a) %Y-%b-%d %H:%M' -d @1631327094
(Sat) 2021-Sep-11 16:24
% TZ=Pacific/Kiritimati python -c 'import datetime, sys; print(datetime.datetime.fromtimestamp(int(sys.argv[1])).strftime("(%a) %Y-%b-%d %H:%M"))' 1631327094
(Sat) 2021-Sep-11 16:24
답변2
기록 파일을 임시로 변경합니다.
chmod -w <oldsessionhistfile> # Prevent new entries in it.
fc -p <oldsessionhistfile> # Set new history file
history # Inspect or whatever you want to do
fc -P # Restore previous one
~에서여기.