「${debian_chroot:+($debian_chroot)} と ${debian_chroot}」

「${debian_chroot:+($debian_chroot)} と ${debian_chroot}」

~/.bashrcで

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

逆になぜダメ?

PS1='${debian_chroot}\u@\h:\w\$ '

それは同じことを達成するでしょう。いいえ?

答え1

違います。括弧に注意してください。

$ var=foo
$ echo "${var} ${var:+($var)}"
foo (foo)

拡張が:+あるため、varが空の場合は印刷されません。

関連情報