在 cal 中突出显示当前日期

dog*_*ane 6 highlighting date cal

我想在cal命令的输出中突出显示今天的日期。什么是最好的方法?

这是我到目前为止:

cal -m | grep -C6 --color "$(date +%e)"
Run Code Online (Sandbox Code Playgroud)

但它不适用于所有情况,例如,当日期只有一位数时。我还希望突出显示在我显示一年的日历时起作用。

Jor*_*ran 7

我不知道如何cal -y仅用正则表达式突出显示年历中的日期,但您的示例不适用于个位数日期的原因是因为$(date +%e)当日期为个位数时,在输出前添加一个空格。

这将起作用:

cal | grep --color -EC6 "\b$(date +%e | sed "s/ //g")"
Run Code Online (Sandbox Code Playgroud)

  • 在 __fish__ 中:`cal | grep --color -EC6 "\b"(date +%e | sed "s/ //g")` (2认同)

小智 6

ncal -b为我挠痒痒。


Pet*_*zel 3

在我的系统(openSUSE 11.4、util-linux-2.19)上,如果输出到终端,输出形式 cal 中的当前日期会自动突出显示(反转颜色)。根据联机帮助页,这似乎是默认设置。如果它在您的系统上不起作用,则可能是一个错误。