[unix] 현재 세션에 대한 배쉬 히스토리

어쩌면 나는 뭔가를 간과하고 있지만 현재 세션에서 현재 배쉬 기록을 얻는 방법이 있습니까?

내가 달리면

ssh host
$ pwd
$ ls
$ cd /tmp

나는 단지 그 세 가지 명령을보고 싶습니다.



답변

약간 원형 교차로 :

history -a ~/current_history

현재 세션의 저장되지 않은 bash 기록을에 저장 ~/current_history하면 볼 수 있습니다.


답변

나는 현재를 쓰고 싶다하는 문제를 가지고 historyA를 파일 여전히 항목이 주요 배쉬에 기록 싶어history

파일 을 첨부하여 다음 과 cat같이 해결했습니다 .

history -a current-history
cat current-history >> .bash_history


답변

사용 comp에 이미 지속 역사 전체 역사 (. 포함 현재 배쉬 세션)을 비교 .bash_history하고 현재 세션에 고유 한 그 라인을 인쇄 – 현재 배쉬 쉘을 시작부터 실행 된 명령 만 표시되어야합니다

comm -23 <( history | cut -c 8- ) ~/.bash_history

편집 : @Wildcard가 지적 했듯이이 명령은의 모든 배포에서 작동하지 않습니다 comm. Mac OS에서 이것을 테스트했습니다.

다음을 사용하는 동일한 아이디어의 변형 diff:

diff <( history | cut -c 8- ) ~/.bash_history | sed -n 's/^< //pg'


답변