是否有在终端中显示日历的命令?

问题描述

在终端中工作时,导航到系统托盘以显示当前日历很不方便。是否有从终端显示日历的命令?

最佳思路

cal 终端日历命令

您可以使用 cal 命令以儒略或公历格式显示日历。格式取决于您的区域设置,但可以使用参数进行切换。

如下图所示,默认日历是当前月份。您可以使用参数 -A 2 显示接下来的两个月或使用 2018 显示当年的所有月份:


20.04 之后的 Ubuntu 版本

在版本 20.04 之后,您可能必须使用

sudo apt update
sudo apt install ncal

注意 ncal 包确实包含 cal 命令。另请注意,在 20.04 之前的早期 Ubuntu 版本中,ncal 也是开箱即用的。

例如在 Ubuntu 16.04 LTS ECM 上:

$ ncal

    March 2022        
Su     6 13 20 27   
Mo     7 14 21 28   
Tu  1  8 15 22 29   
We  2  9 16 23 30   
Th  3 10 17 24 31   
Fr  4 11 18 25      
Sa  5 12 19 26      

次佳思路

另一种选择是 ncal – 它以垂直格式显示日历,即:

    March 2017
Su     5 12 19 26
Mo     6 13 20 27
Tu     7 14 21 28
We  1  8 15 22 29
Th  2  9 16 23 30
Fr  3 10 17 24 31
Sa  4 11 18 25

这有点难以阅读,但据说具有全年日历的优势,每行放置四个月,适合标准尺寸的终端。事实上,它没有,您必须从输出中删除空白行以使其适合 24 行: ncal 2017 | grep -v '^$' 。 ncal 的原始版本没有这些空行。在任何情况下,它都比传统的日历输出占用更少的垂直空间 – 26×76,而 cal 则为 35×66。

第三种思路

可编程日历

尽管这些是 GUI 日历,您仍然可以从终端调用它们。它们使您可以浏览数月和数年。它们旨在从您的 Bash 脚本中调用,但与所有 Bash 命令一样,您也可以从终端调用它们。

YAD(又一个对话框) super-charged fork of Zenity

Zenity 基于文本的 GUI 分支 dialog

不要担心 Gtk 警告信息。从终端运行 GUI 程序时,您会看到很多。例如。 geditnautilus 显示类似的警告。

第四种思路

Khal 是一个日历应用程序,它更符合人们对 2020 年的预期:

它可以通过 pip3 install khal 安装(或者只是 pip 而不是 pip3)。它支持标准 CalDav 格式,并且可以同步到 CalDav 服务器。此外,它还包括一个交互式工具( ikhalkhal interactive )(有点像 git 的 tig ),用于以更简单的方式查看和编辑事件,而无需记住所有标志和语法以及所有内容。

第五种思路

标准 cal 的另一个替代方案是 Alex Matulich 的 enhanced cal。它提供 user-configurable 颜色以及在日历旁边显示提醒和约会的能力。

Enhanced cal page on Unicorn Research site

编辑 2022-06-01:它在带有 sudo apt install ccal 的存储库中可用。

参考资料

  • Is there a command to display a Calendar in the terminal?

是否有在终端中显示日历的命令?

扫一扫手机访问