ncal command question find number of Mondays [closed]
It is simple in the ncal format. Here is the output of 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
...
How would you solve the task by hand?
- Look only at the lines starting with
Mo
- In those lines, search for
1
. - Write down the total number of found
1
s.
These three steps correspond to the following three commands after ncal
:
#! /usr/bin/env bash
year=$1
ncal "$year" | grep '^Mo' | grep -wo 1 | wc -l