我必须为一栋公寓楼创建一个清洁花名册,如果可能的话,我想用 GNU bash 来自动化它。
要求:
- 租户每周都要打扫他们地板上的走廊。
- 该周期从 2019 年 2 月 11 日开始,持续 30 周 (10x3)。
- 我的大楼有 4 层。
- 每层有 10 个租户能够完成任务。
- 租户名称位于文件 tenants.csv 的第三列 (sep = |)。
- 第一列包含公寓编号,如果它以 2 开头,例如在 214 中,则表示它们位于 2 楼。
我想自动生成日期(可能是从星期一开始的带有周数 %V 的日期命令)并从 csv 文件中合并租户的名称。使用 date 命令和 %V 比我习惯的要复杂得多。我不知道如何解决这个问题。
期望的输出(样本取自 2018 年花名册):
Week of Floor 1 Floor 2 Floor 3 Floor 4
Sep 18, Nov 27, Feb 5 Ms.X Mr.Y Ms.XX Mr.YY
Sep 25, Dec 4, Feb 19 Ms.AA Ms.BB Mr.CC Mrs.DD
...
到目前为止,我只有这个作为显示(我认为我可以处理)取决于我如何获取 date 命令来给我正确的日期:
roster_start=$(date -d "20190211") # 11 fev 2019 start of cleaning roster
yr=2019; wk=6
date -d "Feb 6 $yr" +%V
date -d "20190211"
printf "\nWeek of\tFloor 1\t\tFloor 2\t\tFloor 3\t\tFloor 4\n"; \
for wk in 6 16 26 "$yr"; do
printf "%s\t" "$d"
date -d "$wk" +"%b %e"
done
感谢您提供任何帮助。