Bash – Как сократить имя пользователя в PS1

В настоящее время мое приглашение:

xiaobai@dnxb:/tmp$ root@dnxb:/tmp# 

Мое приглашение:

 xb@dnxb:/tmp$ rt@dnxb:/tmp# 

Моя идея – псевдоним имени пользователя, поэтому я попытался повторно использовать тот же uid, чтобы создать нового пользователя:

 xiaobai@dnxb:~$ sudo useradd -ou 1000 -g1000 -d /home/xiaobai -s /bin/bash xb xiaobai@dnxb:~$ su Password: root@dnxb:/home/xiaobai# passwd xb Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully root@dnxb:/home/xiaobai# exit xiaobai@dnxb:~$ su xb Password: xiaobai@dnxb:~$ pwd /home/xiaobai xiaobai@dnxb:~$ PS1='\u:\W\$ ' xiaobai:~$ exit xiaobai@dnxb:~$ id uid=1000(xiaobai) gid=1000(xiaobai) groups=1000(xiaobai),27(sudo) xiaobai@dnxb:~$ 

Он не меняется на xb для PS1 '\ u'. Если да, то как?

Что случилось с настройкой вручную?

 PS1="xb@\h:\w\$ " 

Если вы хотите использовать один и тот же PS1 для обоих / всех пользователей, вы можете использовать расширение параметра, чтобы удалить гласные из имени пользователя:

 PS1='${USER//[aeiou]}@\h:\w\$ '