通过配置PS1在提示上显示当前时间

时间:2019-03-17 02:08:48

标签: bash

我正在尝试配置PS1以显示当前时间,这是我的当前变量

me@host:~/Downloads$ env | grep -i 'ps1'
PS1=\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ 

计划的结果是

me@host; 09:00 AM: ~/Downloads$
  

\ T以12小时格式扩展为当前时间,

临时配置

me@host:~/Downloads$ export PS1="\[\e]0;\u@\h;\T: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$"

不幸的是,提示没有改变。

我的用法有什么问题?

1 个答案:

答案 0 :(得分:1)

  1. 如果双引号,则变量扩展将去除debian_chroot部分
  2. 字符串中嵌入了两个设置,但您只能设置一个:
    • 第一个(已更改)设置终端窗口的标题
    • 第二个(您未更改)设置命令提示符

尝试类似的东西:

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