Substituições de comandos em aspas duplas "
são expandidas imediatamente. Isso não é o que você quer para o seu prompt. Aspas simples '
preservarão as substituições em $PS1
, que só serão expandidas ao exibir o prompt. Por isso, isso deve funcionar:
export PS1='$(whoami)@$(hostname):$(pwd)'
Se você quiser o cifrão de costume e um espaço no final do seu prompt, basta adicionar $
no final (não é necessário escapar): export PS1='$(whoami)@$(hostname):$(pwd)$ '