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

Win*_*nix 32 command-line calendar

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

Win*_*nix 50

cal 终端的日历命令

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

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

校准

  • 您还可以显示特定月份,例如`cal 6 2017`。 (2认同)
  • @G-Man `cal` 非常复杂。例如,当在加拿大、美国或英国输入“cal 9 1752”时,您会看到 **September 1752** 错过了教皇格雷戈里十三世于 **1582 年 10 月**为西方天主教世界废除的十天。使用“cal 10 1582”的意大利人,可能还有德国和瑞典的人会发现日历缺少十天。`cal` 工作到 9,999 年,我已经测试过 2100 年 2 月不是闰月,而 2400 年 2 月是闰月,所以它似乎是未来的证明,因为它在历史上是准确的。 (2认同)

Ran*_*832 14

另一种选择是 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
Run Code Online (Sandbox Code Playgroud)

这有点难以阅读,但据说全年的日历具有优势,每行放置四个月,适合标准尺寸的终端。事实上,事实并非如此,您必须从输出中删除空行才能使其适合 24 行:ncal 2017 | grep -v '^$'. ncal 的原始版本没有这些空行。无论如何,它比传统的日历输出占用更少的垂直空间 - 26×76,与 35×66 相比cal


Win*_*nix 6

可编程日历

尽管这些是 GUI 日历,您仍然可以从终端调用它们。它们可以让您浏览数月和数年。它们被设计为从 Bash 脚本调用,但像所有 Bash 命令一样,您也可以从终端调用它们。

YAD(又一个对话)超级充电叉Zenity

日历亚德

Zenity基于文本的 GUI 分支dialog

日历禅宗

不要担心 Gtk 警告消息。从终端运行 GUI 程序时,您会经常看到这种情况。例如。geditnautilus显示类似的警告。


小智 5

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

哈尔.png

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