【发布时间】:2020-05-16 08:15:41
【问题描述】:
我想配置 zsh 以将每个命令开始的时间附加到执行行命令旁边。例如:
# before I press ENTER
$ ./script
# after I press enter
$ ./script [15:55:58]
Running script...
我想出了以下配置(也将时间戳染成黄色):
preexec () {
TIME=`date +"[%H:%M:%S] "`
echo -e "$1 %{$fg[yellow]%}\033[1A\033[1C${TIME}$reset_color"
}
但它会在cat 和echo 等基本命令上中断并打印{ 和% 字符。它还会在密码提示(macOS 终端)上中断。例如echo:
$ echo "hello" [15:55:58]
hello"hello" %{%}
如何修复此配置? 谢谢。
【问题讨论】:
标签: zsh