20251221204224 push
This commit is contained in:
60
bin/blog.sh
60
bin/blog.sh
@@ -35,25 +35,47 @@ build_feed() {
|
||||
printf '<description>%s</description>\n' "$DESCRIPTION" >> "$OUTPUT_FILE"
|
||||
printf '<copyright>%s</copyright>\n' "$COPYRIGHT" >> "$OUTPUT_FILE"
|
||||
grep -Eo "/blog/[a-zA-Z0-9./?=_%:-]*.html" "$BLOG_INDEX" | while read -r POST_URL; do
|
||||
local POST_FILE
|
||||
POST_FILE="$CONTENT_DIR$POST_URL"
|
||||
local POST_TITLE
|
||||
POST_TITLE="$(grep "class=\"title\"" "$POST_FILE" | head -n 1 | sed 's!^[^>]*>!!' | sed 's!<.*$!!')"
|
||||
local POST_DATE
|
||||
POST_DATE="$(date -d "$(grep "class=\"date\"" "$POST_FILE" | head -n 1 | sed 's!^[^>]*>!!' | sed 's!<.*$!!')" '+%a, %d %b %Y %H:%M:%S %Z')"
|
||||
local POST_CONTENT
|
||||
POST_CONTENT="$(tail -n +6 "$POST_FILE" | head -n -1 | sed 's/^\t//g')"
|
||||
printf '<item><author>%s</author>' "$AUTHOR" >> "$OUTPUT_FILE"
|
||||
printf '<pubDate>%s</pubDate>' "$POST_DATE" >> "$OUTPUT_FILE"
|
||||
printf '<title>%s</title>' "$POST_TITLE" >> "$OUTPUT_FILE"
|
||||
printf '<guid>%s' "$DOMAIN" >> "$OUTPUT_FILE"
|
||||
printf '%s</guid>' "$POST_URL" >> "$OUTPUT_FILE"
|
||||
printf '<link>%s' "$DOMAIN" >> "$OUTPUT_FILE"
|
||||
printf '%s</link>' "$POST_URL" >> "$OUTPUT_FILE"
|
||||
printf '<description><![CDATA[\n' >> "$OUTPUT_FILE"
|
||||
printf '%s' "$POST_CONTENT" >> "$OUTPUT_FILE"
|
||||
printf ']]></description></item>\n' >> "$OUTPUT_FILE"
|
||||
done
|
||||
local POST_FILE
|
||||
POST_FILE="$CONTENT_DIR$POST_URL"
|
||||
local POST_TITLE
|
||||
POST_TITLE="$(grep "class=\"title\"" "$POST_FILE" | head -n 1 | sed 's!^[^>]*>!!' | sed 's!<.*$!!')"
|
||||
local POST_DATE
|
||||
POST_DATE="$(date -d "$(grep "class=\"date\"" "$POST_FILE" | head -n 1 | sed 's!^[^>]*>!!' | sed 's!<.*$!!')" '+%a, %d %b %Y %H:%M:%S %Z')"
|
||||
local POST_CONTENT
|
||||
POST_CONTENT="$(tail -n +6 "$POST_FILE" | head -n -1 | sed 's/^\t//g')"
|
||||
printf '<item><author>%s</author>' "$AUTHOR" >> "$OUTPUT_FILE"
|
||||
printf '<pubDate>%s</pubDate>' "$POST_DATE" >> "$OUTPUT_FILE"
|
||||
printf '<title>%s</title>' "$POST_TITLE" >> "$OUTPUT_FILE"
|
||||
printf '<guid>%s' "$DOMAIN" >> "$OUTPUT_FILE"
|
||||
printf '%s</guid>' "$POST_URL" >> "$OUTPUT_FILE"
|
||||
printf '<link>%s' "$DOMAIN" >> "$OUTPUT_FILE"
|
||||
printf '%s</link>' "$POST_URL" >> "$OUTPUT_FILE"
|
||||
printf '<description><![CDATA[\n' >> "$OUTPUT_FILE"
|
||||
printf '%s' "$POST_CONTENT" >> "$OUTPUT_FILE"
|
||||
printf ']]></description></item>\n' >> "$OUTPUT_FILE"
|
||||
done
|
||||
if [[ -d "$NOW_DIR" ]]; then
|
||||
local POST_FILE
|
||||
POST_FILE="$NOW_DIR/index.html"
|
||||
local POST_LINK
|
||||
POST_LINK="$(basename "$NOW_DIR")"
|
||||
local POST_GUID
|
||||
POST_GUID="$POST_LINK/#$(grep "<p id=" $NOW_DIR/index.html | sed 's!^.*<p id="!!' | sed 's!"><i class.*$!!')"
|
||||
local POST_DATE
|
||||
POST_DATE="$(date -d "$(grep "class=\"date\"" "$POST_FILE" | head -n 1 | sed 's!^[^>]*>!!' | sed 's!<.*$!!')" '+%a, %d %b %Y %H:%M:%S %Z')"
|
||||
local POST_CONTENT
|
||||
POST_CONTENT="$(tail -n +3 "$POST_FILE" | head -n -1 | sed 's/^\t//g')"
|
||||
printf '<item><author>%s</author>' "$AUTHOR" >> "$OUTPUT_FILE"
|
||||
printf '<pubDate>%s</pubDate>' "$POST_DATE" >> "$OUTPUT_FILE"
|
||||
printf '<title>%s has updated Now</title>' "$AUTHOR" >> "$OUTPUT_FILE"
|
||||
printf '<guid>%s' "$DOMAIN" >> "$OUTPUT_FILE"
|
||||
printf '/%s</guid>' "$POST_GUID" >> "$OUTPUT_FILE"
|
||||
printf '<link>%s' "$DOMAIN" >> "$OUTPUT_FILE"
|
||||
printf '/%s/</link>' "$POST_LINK" >> "$OUTPUT_FILE"
|
||||
printf '<description><![CDATA[\n' >> "$OUTPUT_FILE"
|
||||
printf '%s\n' "$POST_CONTENT" >> "$OUTPUT_FILE"
|
||||
printf ']]></description></item>\n' >> "$OUTPUT_FILE"
|
||||
fi
|
||||
printf '</channel></rss>\n' >> "$OUTPUT_FILE"
|
||||
}
|
||||
draft_post() {
|
||||
|
||||
Reference in New Issue
Block a user