34

您可以在 PS1 配置中使用 \d 来显示长日期,即。5 月 18 日星期二,但我怎样才能让它以 18.05.2012 之类的格式显示呢?

4

6 回答 6

68

尝试包括\D{%d.%m.%Y}. 您可以使用任何支持的时间格式strftime(3)

于 2012-02-08T20:30:10.090 回答
17

试试这个:

PS1="\$(date +%d.%m.%Y) > "
export PS1
于 2012-02-08T20:30:52.193 回答
16

使用\D{format } 其中format是 strftime 格式代码。例如:

$ export PS1='\D{%d.%m.%Y}$ '
08.02.2012$
于 2012-02-08T20:31:07.210 回答
14

与其告诉 shell 每次都执行 date 命令,不如使用内置格式。因此,您也可以使用(尽管与您所要求的有所不同)

\D{%F %T}

给你日期和时间。日期格式:YYYY-MM-DD,时间格式为 hh:mm:ss。

于 2014-10-05T19:05:36.623 回答
3

你可以试试这个显示时间:

$ PS1="\n\t \u@\h:\w# "

08:18:57 user@localhost:/home/user#
于 2019-07-14T08:26:22.713 回答
0

我不确定如何将其专门应用于 PS1(也许有人可以编辑此问题以用其他问题中的最佳工作位替换此部分)。

但是您可以根据您当前的语言环境获取短日期格式:

date +%x
于 2020-09-15T19:06:44.710 回答