Você pode processar a saída de history
builtin. Primeiro prepare seu HISTTIMEFORMAT
de acordo com a resposta que você vinculou:
export HISTTIMEFORMAT="%d.%m.%y %T "
Para obter o resultado desejado, invoque:
history | awk '{ printf "%s\t",$1; for(i=4; i<=NF; i++) printf "%s",$i OFS; printf "\t%s %s\n",$2,$3 }'
Se você substituir history
incorporado por uma função:
history() { builtin history | awk '{ printf "%s\t",$1; for(i=4; i<=NF; i++) printf "%s",$i OFS; printf "\t%s %s\n",$2,$3 }'; }
então é suficiente escrever history
para conseguir o que você quer.
Nota: os espaços iniciais e a formatação de coluna da saída history
nua são perdidos. Como o campo comando não tem comprimento fixo, tê-lo no meio não é uma boa ideia. Eu deliberadamente separei os campos com guias (em vez de espaços) para tornar a saída mais legível. Se você preferir espaços, substitua \t
no meu código por (espaço).