在 ~/.bashrc 我有
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
Run Code Online (Sandbox Code Playgroud)
相反为什么不能
PS1='${debian_chroot}\u@\h:\w\$ '
Run Code Online (Sandbox Code Playgroud)
它会完成同样的事情。不是吗?
不一样,注意括号:
$ var=foo
$ echo "${var} ${var:+($var)}"
foo (foo)
Run Code Online (Sandbox Code Playgroud)
该:+
扩张是有使得如果变种是空的那些不被打印。