X-Git-Url: https://zdv2.bktei.com/gitweb/BK-2020-03.git/blobdiff_plain/b1ce1fa279e6f73b78ca4507c6d1358ec43dddb1..338bd5c92593b129abc4dabb649ff029e3e5b75d:/user/mw_create_year_journal_range.sh diff --git a/user/mw_create_year_journal_range.sh b/user/mw_create_year_journal_range.sh new file mode 100644 index 0000000..63694ec --- /dev/null +++ b/user/mw_create_year_journal_range.sh @@ -0,0 +1,48 @@ +#!/usr/bin/env bash +# Desc: Wrapper for creating yearly journal page generation script +# Input: arg1: path mw_create_year_journal.sh +# arg2: year start +# arg3: year end +# Example: mw_create_year_journal_range.sh ./mw_create_year_journal.sh 2030 2040 +# Depends: BK-2020-03: mw_create_year_journal.sh +# Version: 0.0.1 + +# plumbing +path_cyj="$1"; # eg "$HOME/scripts/mw_create_year_journal.sh" +year_start="$2"; # eg 2030 +year_end="$3"; # eg 2040 +dir_out="./wikicode/"; + +yell() { echo "$0: $*" >&2; } # print script path and all args to stderr +die() { yell "$*"; exit 111; } # same as yell() but non-zero exit status +must() { "$@" || die "cannot $*"; } # runs args as command, reports args if command fails +check_depends() { + # check location of `mw_create_year_journal.sh` + if [[ ! -f "$path_cyj" ]]; then die "FATAL:Not found:$path_cyj"; fi; +}; +check_plumbing() { + if [[ ! -d "$dir_out" ]]; then + yell "STATUS:Creating missing dir_out:$dir_out"; + mkdir -p "$dir_out"; fi; +}; +main() { + check_depends; + check_plumbing; + + while read -r year; do + cyj_args+=("$year"); + + # Define output file path + path_out="$dir_out"/"$(printf "%d" "$year")"; + + # Execute + "$path_cyj" "${cyj_args[@]}" > "$path_out"; + + unset cyj_args; + done < <(seq "$year_start" "$year_end"); # each year +}; + +main "$@"; + +# Author: Steven Baltakatei Sandoval +# License: GPlv3+