Files
aoc2024/fetch.sh
Amneesh Singh f0ebeb2301 day 22
Signed-off-by: Amneesh Singh <natto@weirdnatto.in>
2024-12-22 18:24:01 +05:30

39 lines
778 B
Bash
Executable File

#!/usr/bin/env bash
SOURCE_DIR=$(realpath "$(dirname "$0")")
INPUT_DIR=${INPUT_DIR:="$SOURCE_DIR/inputs"}
help () {
echo "usage: $0 <day1-day25>"
echo "example: $0 day15"
echo " $0 15"
echo " $0 all"
}
fetch () {
TMPFILE=$(mktemp)
curl "https://adventofcode.com/2024/day/${1}/input" \
-s --fail-with-body --cookie "session=$AOC_SESSION" \
-o "${TMPFILE}"
mkdir -p "$INPUT_DIR"
mv "$TMPFILE" "$INPUT_DIR/day${1}.in"
echo "Fetched Day $1"
}
if [[ $# != 1 || ! "${1#day}" =~ ^([1-9]|1[0-9]|2[0-5]|all)$ ]]; then
help
exit 1
fi
if [[ -z "${AOC_SESSION}" ]]; then
echo "\$AOC_SESSION is not set"
exit 1
fi
if [[ $1 == "all" ]]; then
for x in {1..25}; do fetch "$x"; done
else
fetch "${1#day}"
fi