Um caminho ligeiramente indireto:
history -a ~/current_history
Isso salvará o histórico bash não salvo da sessão atual em ~/current_history
, que você poderá visualizar.
Talvez eu esteja ignorando alguma coisa, mas há uma maneira de obter seu histórico bash atual para a sessão atual que você está usando,
se eu correr
ssh host
$ pwd
$ ls
$ cd /tmp
Eu só quero ver esses 3 comandos e nada mais
Eu tive o problema que eu queria escrever o atual history
para um arquivo , mas ainda queria que as entradas fossem gravadas no bash% principalhistory
Eu resolvi isso apenas anexando o arquivo com cat
:
history -a current-history
cat current-history >> .bash_history
Use comp
para comparar todo o histórico (incluindo a sessão atual de Bash) com o histórico já persistido em .bash_history
e imprimir apenas as linhas exclusivas da sessão atual - que deve mostrar apenas os comandos que foram executado desde o início do shell Bash atual
comm -23 <( history | cut -c 8- ) ~/.bash_history
Editar: como @Wildcard apontou que este comando não funciona para todas as distribuições de comm
. Eu testei isso no Mac OS.
Uma variação da mesma ideia usando diff
:
diff <( history | cut -c 8- ) ~/.bash_history | sed -n 's/^< //pg'
Tags bash command-history