init
This commit is contained in:
commit
d013ece0f3
363 changed files with 20823 additions and 0 deletions
36
scripts/add_update_frontmatter.sh
Executable file
36
scripts/add_update_frontmatter.sh
Executable file
|
@ -0,0 +1,36 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Current date for the 'updated' field
|
||||
current_date=$(date +%F)
|
||||
|
||||
# Recursive search for all markdown files in the content folder
|
||||
find ../content -type f -name "*.md" | while read file; do
|
||||
# Check if the file has frontmatter enclosed in +++
|
||||
if [ "$(head -n 1 "$file")" = "+++" ]; then
|
||||
# Check if the 'date' field exists in the frontmatter
|
||||
if grep -q '^date\s*=' "$file"; then
|
||||
# Check if the 'updated' field is already present
|
||||
if grep -q '^updated\s*=' "$file"; then
|
||||
echo "✘ Skipped: 'updated' field already present in $file"
|
||||
else
|
||||
# Use awk to insert the 'updated' field after the 'date' field
|
||||
awk -v date="$current_date" '
|
||||
BEGIN { inserted=0 }
|
||||
/^date\s*=/ && inserted == 0 {
|
||||
print $0
|
||||
print "updated = " date
|
||||
inserted = 1
|
||||
next
|
||||
}
|
||||
{ print }
|
||||
' "$file" > "$file.tmp" && mv "$file.tmp" "$file"
|
||||
|
||||
echo "✔ Inserted 'updated' after date in $file"
|
||||
fi
|
||||
else
|
||||
echo "✘ No date field found in the frontmatter of $file"
|
||||
fi
|
||||
else
|
||||
echo "✘ No frontmatter found in $file"
|
||||
fi
|
||||
done
|
Loading…
Add table
Add a link
Reference in a new issue