my_blog/update_gemlog.sh

38 lines
882 B
Bash
Executable File

#!/bin/bash
SOURCE_DIR=~/blog_source
ASSETS_DIR=$SOURCE_DIR/assets
GEM_DIR=~/public_gemini
rm -r $GEM_DIR/*
mkdir -p $GEM_DIR/assets/jpeg
mkdir -p $GEM_DIR/assets/svg
cp $ASSETS_DIR/jpeg/* $GEM_DIR/assets/jpeg/
cp $ASSETS_DIR/svg/* $GEM_DIR/assets/svg/
cp $SOURCE_DIR/index.gmi $SOURCE_DIR/index.gmi.temp
LINE=`grep -Fn 'Posts' $SOURCE_DIR/index.gmi | cut -d : -f 1`
LINE=$(($LINE+1))
for FILE in `ls -tr $SOURCE_DIR/posts | grep -v /`
do
NAME=${FILE%.html}
OUT="$GEM_DIR/$NAME.gmi"
~/bin/html2gemini_rs "${SOURCE_DIR}/posts/${FILE}" > "${OUT}"
SPACES=`tr -s '_' ' ' <<< "$NAME"`
ENTRY="posts/${FILE}"
TIME_MODIFIED=`stat -c %y ${ENTRY} | grep -oE "\w{4}-\w{2}-\w{2} \w{2}:\w{2}:\w{2}"`
sed -i "$LINE i => ${NAME}.gmi ${SPACES} ${TIME_MODIFIED} UTC" $SOURCE_DIR/index.gmi.temp
done
cp $SOURCE_DIR/index.gmi.temp $GEM_DIR/index.gmi
rm $SOURCE_DIR/index.gmi.temp