49 lines
1.2 KiB
Bash
Executable File
49 lines
1.2 KiB
Bash
Executable File
#! /bin/bash
|
|
|
|
# just gonna assume you're executing in the scripts folder
|
|
|
|
# build the blog files
|
|
cd ../blog || exit
|
|
CONTENTNUM=$(($( find . -type f -name "content-*" | wc -l)-1))
|
|
for ((i=-1;i<CONTENTNUM;i++))
|
|
do
|
|
# separate files by respective static pages
|
|
padint="$(printf %03d "$i")"
|
|
contentname="content-$padint"
|
|
quotename="quote-$padint"
|
|
tailname="tail-$padint"
|
|
blogname="blog-$padint"
|
|
|
|
# interactive tail
|
|
if (( i >= 0 )) ;then
|
|
|
|
# prepare tail template
|
|
cp filetail "$tailname"
|
|
|
|
# increment int if the page exists
|
|
padintprev="$(printf %03d $((i - 1)) )"
|
|
if (( $((i+1)) == CONTENTNUM )) ;then
|
|
padintnext="$(printf %03d -1 )"
|
|
else
|
|
padintnext="$(printf %03d $((i + 1)) )"
|
|
fi
|
|
|
|
# replace placeholders
|
|
sed -i "s/PREVPADINT/$padintprev/g" "$tailname"
|
|
sed -i "s/NEXTPADINT/$padintnext/g" "$tailname"
|
|
fi
|
|
|
|
# cat together
|
|
if [[ -f $contentname ]] ;then
|
|
cat filehead "$contentname" "$tailname" "$quotename" > "$blogname"
|
|
fi
|
|
done
|
|
|
|
# clean up non prod files, lock down permissions, and self-destruct
|
|
cd ../blog || exit
|
|
\rm filehead filetail content* quote* .blog.* tail*
|
|
cd ../ || exit
|
|
\rm -rf .git scripts .index.html.* README.md Jenkinsfile
|
|
find . -type f -exec chmod 600 {} \;
|
|
find . -type d -exec chmod 700 {} \;
|