在我的终端提示中添加制表符和换行符

在我的终端提示中添加制表符和换行符

我的终端提示太长了。如果我输入一个长命令,它会被换到下一行,这很难阅读。

我想从 ParrotOS 中借鉴经验,只需在提示符下方的行中输入命令即可。


下列的~/.bashrc,我设法通过进入并改变来添加换行符

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

至(请注意\n结尾的):

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\n\$ '

这有效。$现在在换行符上。问题是,我还想让它稍微往上一点。我试过了:

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\n\t\$ '

但这会打印出时间:

myName@myMachine:~/someDir
14:59:15$ 

显然,\t在这个上下文中时间戳是占位符吗?

我怎样才能打印出文字制表符?当然,我可以添加空格,但这样不太干净。

答案1

根据Bash 手册没有水平制表符的代码,并\t显示当前时间。

但是,您可以使用 xxx (其中 xxx 是字符的八进制 ASCII 码)将任意字符插入到提示字符串中\xxx。有一个制表符表示水平制表符,其 ASCII 十进制码为 9。因此,您可以在提示中通过\011在序列中插入(十进制 9 的八进制值)来获得水平制表符。

相关内容