在 bash 提示符前增加空行

目标:在每个新 bash 提示符前添加一个空行,与上个命令的输出做分隔,同时打开终端的首个 bash 提示符前不添加空行。

效果示例:

1
2
3
4
5
6
7
user@PC:~$ ls
Desktop Documents Downloads Music Pictures Public Templates Videos

user@PC:~$ arch
x86_64

user@PC:~$ _

.bashrc 文件中增加以下内容:

1
2
3
4
5
6
7
8
9
function __ps1_newline_login {
if [[ -z "${PS1_NEWLINE_LOGIN}" ]]; then
PS1_NEWLINE_LOGIN=true
else
printf '\n'
fi
}

PROMPT_COMMAND='__ps1_newline_login'

说明:

  • PROMPT_COMMAND 是一个特殊的 bash 变量,在每次提示符显示前运行。
  • 需要使用 -z 标识来检查字符串的长度是否为 0。