bash $PS1 变量中的参数

bash $PS1 变量中的参数

在变量中可以包含的各个参数之间bash PS1\w展开

当前工作目录,$HOME 缩写为波形符(使用 PROMPT_DIRTRIM 变量的值)

如中所述bash手册

My$HOME设置为/home/myuser/(与 中指定的值相同),但in/etc/passwd的扩展给出了当 I 在目录中时的情况。因此,它不是“用波形符缩写”。\wPS1/home/myuser$HOME

我正在使用 Ubuntu 16.04 和GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu).

怎么了?\w实际复制当前目录路径的来源是什么?

答案1

尾随//home/myuser/bash 令人困惑。我想如果你删除它,你会看到正常的行为。

该斜杠不是目录名称的一部分;它是一个路径分隔符。它不应该在/etc/passwd,也不应该在$HOME

您可以使用以下命令来测试该理论,而无需触及文件:

HOME=/home/myuser

之后波浪号应该出现在您的提示中。

相关内容