如何解决如何操作cal命令问题
我在作业中遇到了一个问题,无法找出正确的选项和管道来使用 cal 或 ncal。 问题如下:
编写一个命令行来查找给定年份中一个月第一天的星期一数。结果必须是显示的数字 在屏幕上。
通过在命令行中更改年份, 检查多年来获得的结果: 1947、1989 和 2021 年
约束
-
使用最多 3 个管道的单个命令
-
不使用 sed 命令或 awk 命令。
解决方法
ncal 格式很简单。这是 ncal 2012
的输出:
2012
January February March April
Su 1 8 15 22 29 5 12 19 26 4 11 18 25 1 8 15 22 29
Mo 2 9 16 23 30 6 13 20 27 5 12 19 26 2 9 16 23 30
Tu 3 10 17 24 31 7 14 21 28 6 13 20 27 3 10 17 24
We 4 11 18 25 1 8 15 22 29 7 14 21 28 4 11 18 25
Th 5 12 19 26 2 9 16 23 1 8 15 22 29 5 12 19 26
Fr 6 13 20 27 3 10 17 24 2 9 16 23 30 6 13 20 27
Sa 7 14 21 28 4 11 18 25 3 10 17 24 31 7 14 21 28
May June July August
Su 6 13 20 27 3 10 17 24 1 8 15 22 29 5 12 19 26
Mo 7 14 21 28 4 11 18 25 2 9 16 23 30 6 13 20 27
Tu 1 8 15 22 29 5 12 19 26 3 10 17 24 31 7 14 21 28
...
您将如何手动解决任务?
- 只看以
Mo
开头的行 - 在这些行中,搜索
1
。 - 写下找到的
1
总数。
这三步对应ncal
后面的三个命令:
#! /usr/bin/env bash
year=$1
ncal "$year" | grep '^Mo' | grep -wo 1 | wc -l
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。