Я должен создать список очистки для жилого дома и хотел бы автоматизировать его с помощью GNU bash, если это возможно.
Требования:
- Арендаторы должны очистить коридорна их этаже каждую неделю.
- Цикл начинается 11 февраля 2019 года и длится 30 недель (10x3).
- В моем здании 4 этажа.
- На каждом этаже могут выполнять 10 арендаторов.
- Имена арендаторов находятся в 3-м столбце файла tenants.csv, (sep = |).
- 1-й столбецсодержит номер квартиры, который, если он начинается с 2, например 214, означает, что они расположены на 2-м этаже.
Я хотел бы автоматически сгенерировать даты (возможно, из команды Date сномер недели% 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
...
Пока у меня есть только это как отображение (что я могуя думаю) зависит от того, как я получаю команду даты, чтобы дать мне правильные даты:
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
Спасибо за любую помощь, которую вы можете предоставить.