Em zsh, você pode definir a função de gancho preexec
para fazer o eco de uma string especificada antes de cada comando é executado.
No bash, você poderia usar o DEBUG
trap para configurar um gancho preexec para fazer o mesmo.
Você definiria uma função preexec () algo assim:
preexec () { echo "-------------------------------"; }
preexec_invoke_exec () {
[ -n "$COMP_LINE" ] && return # do nothing if completing
preexec
}
trap 'preexec_invoke_exec' DEBUG
Veja mais detalhes em O bash tem um gancho que é executado antes de executar um comando?
Eu não acho que isso funcione em todas as versões do bash. No meu antigo servidor Ubuntu, executando o bash 3.2.39 (1), help trap
diz
If a SIGNAL_SPEC is DEBUG, ARG is executed after every simple command.
Em outro servidor, executando bash 4.1.2 (1), diz
If a SIGNAL_SPEC is DEBUG, ARG is executed before every simple command.
que é o que precisamos.
Portanto, certifique-se de que, em sua versão do bash, help trap
diga " antes de cada comando simples".