Você pode colocar essas linhas no seu .zsrhc
ou.bashrc
[ -z "$PS1" ] && return
function cd {
builtin cd "$@" && ls -F
}
Resultado ->
Explicação desta resposta :
No início do meu .bashrc, tenho: [-z "$ PS1"] && return, e tudo o que se segue a essa linha se aplica somente a sessões interativas, portanto isso não afeta o comportamento do CD nos scripts.
Mais informações deste comentário :
[-z "$ PS1"] verifica se o $ PS (variável de prompt interativo) é "comprimento zero" (-z). Se o comprimento for zero, significa que não foi definido; portanto, o Bash não deve estar em execução no modo interativo. A parte de retorno && sai da fonte .bashrc neste momento, nessas condições.
Btw, obrigado pela pergunta, é muito legal :)
Editar:
Outra solução seria integrar seus sls ao prompt; Tenho certeza que você pode fazer isso com OhMyZsh;)