You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.1 KiB
45 lines
1.1 KiB
#!/bin/bash |
|
|
|
#Создан: Чт 06 Май 2010 02:44:00 |
|
#Изменён: Вс 23 фев 2020 13:27:43 |
|
|
|
# Скрипт напоминания о датах |
|
# |
|
# Формат файла DATAFILE: |
|
# |
|
# = Январь = |
|
# |
|
# * *01/01* - Событие 1 |
|
# |
|
# = Февраль = |
|
# |
|
# * *02/02* - Событие 2 |
|
# * *03/02* - Событие 3 |
|
|
|
#Файл с данными |
|
DATAFILE="$SHELLRC/vimwiki/wiki/ЖЖ/Даты и события/dates.wiki" |
|
#За сколько дней оповещать |
|
DAYS=3 |
|
#Сегодняшнее число |
|
TODAY=$(\date +%s --date=$(\date '+%m/%d')) |
|
#Количество найденных событий |
|
FOUND=0 |
|
|
|
dates() { |
|
echo -e "${green}Ближайшие даты:${rstc}" |
|
|
|
#Поиск дат в базе данных |
|
for i in $(seq 0 $DAYS); do |
|
DATE=$(\date -d "UTC 1970-01-01 $(($TODAY + 86400*$i)) secs" '+%d/%m') |
|
grep -v '#.*' "$DATAFILE" | grep $DATE && ((FOUND++)) |
|
done; |
|
|
|
#Код возврата. 1 - не найдено дат. |
|
[ $FOUND -eq 0 ] && echo "-" && exit 1 || exit 0 |
|
} |
|
|
|
case "$1" in |
|
-all) cat "$DATAFILE";; |
|
*) dates;; |
|
esac |
|
|
|
|