如何为我的工作目录 (Linux) 定制我的命令行提示符?

如何为我的工作目录 (Linux) 定制我的命令行提示符?

我该如何改变这一点

[Sat Jun 02 14:24:12 vivek@server:~ ] $

[Sat Jun 02 14:24:12 vivek@server:myDirectory! ] $

而“myDirectory!”是自定义字符串,只有当我在主目录中时才会显示。我相信,我必须以这种格式执行此操作$ PS1="[\d \t \u@\h:\w ] $ "。我可能错了。

PS:我没有Linux可以摆弄。我在学校练习。

答案1

Bash 提供了一个名为 PROMPT_COMMAND 的环境变量。在 Bash 显示提示符之前,此变量的内容将作为常规 Bash 命令执行。

http://tldp.org/HOWTO/Bash-Prompt-HOWTO/x264.html

在 PROMPT_COMMAND 中插入一个 if/then 语句来更改 PS1 变量。将此行添加到您的 .bashrc:

PROMPT_COMMAND='if [ $PWD == $HOME ]; then PS1="[\d \t \u@\h:myDirectory! ] $ "; else PS1="[\d \t \u@\h:\w ] $ "; fi'

相关内容