一、cal 命令介绍
在Linux系统中,
cal是一个非常实用的小工具,用于显示日历。它简单易用,却功能强大,能够帮助用户快速查看当前月份、特定月份或年份的日历。无论是日常安排还是项目管理,了解如何使用cal都能显著提高效率。
二、cal 工具安装
如果系统没有安装 cal 工具,可使用以下命令安装。本次实践系统环境为 Ubuntu 24.04.1 LTS。
apt install ncal -y
安装过程输出
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
ncal
0 upgraded, 1 newly installed, 0 to remove and 114 not upgraded.
Need to get 21.0 kB of archives.
After this operation, 59.4 kB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu noble/universe amd64 ncal amd64 12.1.8 [21.0 kB]
Fetched 21.0 kB in 0s (42.6 kB/s)
Selecting previously unselected package ncal.
(Reading database ... 79155 files and directories currently installed.)
Preparing to unpack .../archives/ncal_12.1.8_amd64.deb ...
Unpacking ncal (12.1.8) ...
Setting up ncal (12.1.8) ...
Processing triggers for man-db (2.12.0-4build2) ...
Win10 子系统安装的 Ubuntu 和树莓派 lite 版都没有 cal 功能,无法查看月日历,年日历。 因为都是基于Debian 所以增加日历功能命令一样 sudo apt install bsdmainutils 会安装 bsdmainutils 和 ncal 两个软件 选择确定即可。
三、基本使用
3.1 直接使用
当不带任何参数执行 cal 命令时,默认情况下会显示当前月份的日历。这包括星期的天数和当前月份的所有日期,并且今天的日期通常会以不同的格式突出显示。
( ncal 突出显示当前的日期 )
xixi@haha:~$ cal
May 2026
Su Mo Tu We Th Fr Sa
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
xixi@haha:~$ ncal
May 2026
Su 3 10 17 24 31
Mo 4 11 18 25
Tu 5 12 19 26
We 6 13 20 27
Th 7 14 21 28
Fr 1 8 15 22 29
Sa 2 9 16 23 30
3.2 显示特定月份的日历
若需要查看非当前月份的日历,可以通过指定月份和年份来实现。语法如下:
cal [month] [year]
例如,要查看 2025 年 4 月的日历,可以输入:
xixi@haha:~$ cal 4 2025
April 2025
Su Mo Tu We Th Fr Sa
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
这里需要注意的是,月份需要用数字表示( 如 1 代表一月,12 代表十二月 ),而年份则需完整输入四位数字。
3.3 显示整年的日历 除了查看单个月份外,还可以通过仅提供年份参数来查看整个年份的日历:
cal [year]
例如,查看 2025 年的全年日历:
xixi@haha:~$ cal 2025
2025
January February March
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 2 3 4 1 1
5 6 7 8 9 10 11 2 3 4 5 6 7 8 2 3 4 5 6 7 8
12 13 14 15 16 17 18 9 10 11 12 13 14 15 9 10 11 12 13 14 15
19 20 21 22 23 24 25 16 17 18 19 20 21 22 16 17 18 19 20 21 22
26 27 28 29 30 31 23 24 25 26 27 28 23 24 25 26 27 28 29
30 31
April May June
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 2 3 4 5 1 2 3 1 2 3 4 5 6 7
6 7 8 9 10 11 12 4 5 6 7 8 9 10 8 9 10 11 12 13 14
13 14 15 16 17 18 19 11 12 13 14 15 16 17 15 16 17 18 19 20 21
20 21 22 23 24 25 26 18 19 20 21 22 23 24 22 23 24 25 26 27 28
27 28 29 30 25 26 27 28 29 30 31 29 30
July August September
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 2 3 4 5 1 2 1 2 3 4 5 6
6 7 8 9 10 11 12 3 4 5 6 7 8 9 7 8 9 10 11 12 13
13 14 15 16 17 18 19 10 11 12 13 14 15 16 14 15 16 17 18 19 20
20 21 22 23 24 25 26 17 18 19 20 21 22 23 21 22 23 24 25 26 27
27 28 29 30 31 24 25 26 27 28 29 30 28 29 30
31
October November December
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 2 3 4 1 1 2 3 4 5 6
5 6 7 8 9 10 11 2 3 4 5 6 7 8 7 8 9 10 11 12 13
12 13 14 15 16 17 18 9 10 11 12 13 14 15 14 15 16 17 18 19 20
19 20 21 22 23 24 25 16 17 18 19 20 21 22 21 22 23 24 25 26 27
26 27 28 29 30 31 23 24 25 26 27 28 29 28 29 30 31
3.4 显示多月视图
有时你可能想要同时查看连续几个月的日历,比如为了规划旅行或活动。虽然 cal 命令本身不直接支持此功能,但你可以结合循环语句或其他命令来达到目的。不过,对于简单的双月或多月查询,手动指定月份更为直接有效。
选项与参数:
-m:允许你指定一年中的某个月作为起始月,而非默认的一月。-3:显示上一个月、当前月以及下一个月的日历,形成三个月的概览。-y或--year:等同于不带参数直接指定年份,显示整年的日历。
例如,使用 -3 参数查看包含当前月在内的三个月日历:
xixi@haha:~$ cal -3
2026
April May June
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 2 3 4 1 2 1 2 3 4 5 6
5 6 7 8 9 10 11 3 4 5 6 7 8 9 7 8 9 10 11 12 13
12 13 14 15 16 17 18 10 11 12 13 14 15 16 14 15 16 17 18 19 20
19 20 21 22 23 24 25 17 18 19 20 21 22 23 21 22 23 24 25 26 27
26 27 28 29 30 24 25 26 27 28 29 30 28 29 30
31
四、总结
cal 命令以其简洁性和高效性成为了 Linux 环境下不可或缺的工具之一。无论你是想迅速查看本月的日程安排,还是计划未来几年的重要事件,掌握 cal 命令的基础使用都能极大地提升你的工作效率。尽管其功能看似简单,但在正确的时间和场合运用得当,将为你的日常工作带来意想不到的帮助。尝试利用这些技巧来优化你的工作流程吧!
原文地址:https://blog.csdn.net/jks212454/article/details/147514539