web/_scripts/sh/sync_monitor.sh

38 lines
681 B
Bash
Raw Normal View History

2019-11-05 12:18:31 +03:00
#!/bin/bash
2020-06-01 09:45:48 +03:00
# Files sync monitor
2020-01-02 16:17:49 +03:00
# v2.0
# https://github.com/cotes2020/jekyll-theme-chirpy
2019-11-05 12:18:31 +03:00
# © 2019 Cotes Chung
# MIT Licensed
2019-11-18 16:37:09 +03:00
# $1 -> the origin file with absolute path.
2019-11-05 12:18:31 +03:00
# $2 -> the origin sync directory
2020-06-01 09:45:48 +03:00
# $3 -> the destination sync directory
2019-11-05 12:18:31 +03:00
2019-11-18 16:37:09 +03:00
# Omit the system temp file
2020-09-01 09:54:29 +03:00
if [[ ! -f $1 ]]; then
2019-11-05 12:18:31 +03:00
exit 0
fi
src_dir="$(dirname "$(realpath "$1")")"
2019-11-05 12:18:31 +03:00
2020-08-19 12:05:58 +03:00
dir_prefix="$(realpath "$2")/"
2019-11-05 12:18:31 +03:00
related_dir="${src_dir:${#dir_prefix}}"
2020-08-19 12:05:58 +03:00
dest="$(realpath "$3")/${related_dir}"
2019-11-05 12:18:31 +03:00
2020-09-01 09:54:29 +03:00
if [[ ! -d $dest ]]; then
2019-11-05 12:18:31 +03:00
mkdir -p "$dest"
fi
2020-09-01 09:54:29 +03:00
if [[ -f $1 ]]; then
2020-08-19 12:05:58 +03:00
cp "$1" "$dest"
2019-11-05 12:18:31 +03:00
fi
2020-09-01 09:54:29 +03:00
if [[ $related_dir == "_posts" ]]; then
2020-08-19 12:05:58 +03:00
bash "$3"/_scripts/sh/create_pages.sh
bash "$3"/_scripts/sh/dump_lastmod.sh
2019-11-05 12:18:31 +03:00
fi