diff --git a/bin/aoc b/bin/aoc new file mode 100755 index 0000000..3ce8415 Binary files /dev/null and b/bin/aoc differ diff --git a/sbin/timer b/bin/timer similarity index 100% rename from sbin/timer rename to bin/timer diff --git a/sbin/aoc b/sbin/aoc deleted file mode 100755 index 0aa7533..0000000 --- a/sbin/aoc +++ /dev/null @@ -1,147 +0,0 @@ -#!/bin/bash - -today() { - TODAYDIR="$AOCROOT/$CURRYEAR/day$CURRDAY" - if [ ! -d $TODAYDIR ]; then - mkdir $TODAYDIR - fi - echo $TODAYDIR -} - -getsharelink() { - echo "Getting share path" - YR=$CURRYEAR - DY=$CURRDAY - - PWD=$(pwd) - PWD=${PWD#$AOCROOT/} - if [[ "$PWD" =~ ^[1-9][0-9]{3}/day[0-2][0-9]$ ]]; then - YR=${PWD:0:4} - DY=${PWD:5:5} - DY=${DY/day/} - fi - echo "https://git.bullercodeworks.com/brian/adventofcode/src/branch/main/$YR/day$DY/main.go" -} - -getproblem() { - YR=$CURRYEAR - DY=$CURRDAY - DIRDY=$CURRDAY - - PWD=$(pwd) - PWD=${PWD#$AOCROOT/} - if [[ "$PWD" =~ ^[1-9][0-9]{3}/day[0-2][0-9]$ ]]; then - YR=${PWD:0:4} - DY=${PWD:5:5} - DY=${DY/day0/} - DY=${DY/day/} - DIRDY=$DY - fi - if [[ ! -d "$AOCROOT/$YR/day$DY" ]]; then - echo "Making directory: $AOCROOT/$YR/day$DY" - mkdir "$AOCROOT/$YR/day$DY" - fi - cd "$AOCROOT/$YR/day$DY" - if [[ -f "problem" ]]; then - echo "Found problem file." - if [[ $1 != "-f" ]]; then - # Check if the file already exists - echo "Not forcing overwrite." - exit 1 - fi - fi - - # Remove any zero padding from day - DY=$(echo "$DY"|awk '$0*=1') - echo "Getting problem at $YR/day/$DY" - elinks -dump https://adventofcode.com/$CURRYEAR/day/$DY > problem -} - -getinput() { - YR=$CURRYEAR - DY=$CURRDAY - DIRDY=$CURRDAY - - PWD=$(pwd) - PWD=${PWD#$AOCROOT/} - if [[ "$PWD" =~ ^[1-9][0-9]{3}/day[0-2][0-9]$ ]]; then - YR=${PWD:0:4} - DY=${PWD:5:5} - DY=${DY/day0/} - DY=${DY/day/} - fi - if [[ ! -d "$AOCROOT/$YR/day$DIRDY" ]]; then - echo "Making directory: $AOCROOT/$YR/day$DY" - mkdir "$AOCROOT/$YR/day$DY" - fi - cd "$AOCROOT/$YR/day$DIRDY" - if [[ -f "input" ]]; then - echo "Found input file." - if [[ $1 != "-f" ]]; then - # Check if the file already exists - echo "Not forcing overwrite." - exit 1 - fi - fi - - # Remove any zero padding from day - DY=$(echo "$CURRDAY"|awk '$0*=1') - echo "Getting input for $CURRYEAR/day/$DY" - echo "https://adventofcode.com/$CURRYEAR/day/$DY/input" - echo "session=$(getsessiontoken)" - curl --cookie "session=$(getsessiontoken)" https://adventofcode.com/$CURRYEAR/day/$DY/input > input -} - -getsessiontoken() { - FULLCOOKIE=$(grep "adventofcode" $HOME/.elinks/cookies) - if [[ ! -n "$FULLCOOKIE" ]]; then - echo "Error pulling elinks cookie" - exit 1 - fi - echo $FULLCOOKIE | cut -d" " -f2 -} - -help() { - echo "Usage: aoc [option]" - echo "Available Options:" - echo "" - echo " today - Echo the current day's directory, creating it if it doesn't exist" - echo "" - echo " getproblem - Retrieve the problem for the day associated with the current directory" - echo " If the current directory isn't a specific problem (\d\d\d\d/day\d\d/)" - echo " then it changes to today's directory, making it if needed" - echo "" - echo " getinput - Retrieve the input for the day associated with the current directory" - echo " If the current directory isn't a specific problem (\d\d\d\d/day\d\d/)" - echo " then it changes to today's directory, making it if needed" - echo "" - echo " getsessiontoken - Echo the session token from the elinks cookie file" - echo "" - echo " getsharelink - Get the repo remote path for the main.go file in the current directory" - echo " If the current directory isn't a specific problem (\d\d\d\d/day\d\d/)" - echo " then it uses today's directory" - echo "" - echo " help - Display this message" - echo "" -} - -case $1 in - "today") - today - ;; - "getproblem") - getproblem - ;; - "getinput") - getinput - ;; - "getsessiontoken") - getsessiontoken - ;; - "getsharelink") - getsharelink - ;; - *) - help - ;; -esac