Prune all content

This commit is contained in:
tdehaeze committed 2026-10-12 13:51:12 +02:00
1 parent 9c3bf36f36
commit 665774dd08
1 file changed
+14 -10
+14 -10
View File
@@ -1,20 +1,24 @@
#!/usr/bin/env bash
# Remove content/zettels/*.md whose org source in ~/Cloud/brain no longer exists.
# Remove content/<section>/*.md (zettels and bibliography) whose org source in ~/Cloud/brain no longer exists.
# Dry run by default; pass --delete to actually remove files.
set -euo pipefail
brain=~/Cloud/brain
zet="$(cd "$(dirname "$0")" && pwd)/content/zettels"
content="$(cd "$(dirname "$0")" && pwd)/content"
sections=(zettels book phdthesis inbook techreport article inproceedings websites)
count=0
for md in "$zet"/*.md; do
name=$(basename "$md" .md)
[[ $name == _index ]] && continue
if [[ ! -f "$brain/$name.org" ]]; then
echo "orphan: $md"
[[ ${1:-} == --delete ]] && rm "$md"
count=$((count + 1))
fi
for section in "${sections[@]}"; do
for md in "$content/$section"/*.md; do
[[ -e $md ]] || continue
name=$(basename "$md" .md)
[[ $name == _index ]] && continue
if [[ ! -f "$brain/$name.org" ]]; then
echo "orphan: $md"
[[ ${1:-} == --delete ]] && rm "$md"
count=$((count + 1))
fi
done
done
if [[ $count -eq 0 ]]; then