Sustituciones de comandos entre comillas dobles " expandirse inmediatamente. Eso no es lo que quieres para tu aviso. Comillas simples ' conservará las sustituciones en $PS1 que luego solo se expanden cuando se muestra el aviso. Por lo tanto, esto debería funcionar:
export PS1='$(whoami)@$(hostname):$(pwd)'
Si desea el signo de dólar habitual y un espacio al final de su mensaje, simplemente agregue $ al final (no es necesario escapar):export PS1='$(whoami)@$(hostname):$(pwd)$ '
sh-4.2$ export PS1="\example@unixlinux.online\h:\w>"
example@unixlinux.online:~>cd /usr/local
example@unixlinux.online:/usr/local>
Este comando funciona para mí.
export PS1="\example@unixlinux.online\h: \W:$"
Dónde
\u =nombre de usuario
\h =nombre de host
\W Nombre de la carpeta actual (no la ruta completa)