notes-techniques/update_files.sh

29 lines
761 B
Bash
Executable File

#!/bin/bash
# Fichier README.md
README="FILES.md"
# Temporary file for new list
TEMP_FILE=$(mktemp)
# Get all .md files in the repository except the README.md
find . -type f -name "*.md" ! -name "README.md" | sort > "$TEMP_FILE"
# Extract the list of .md files from README.md
grep -o '\[.*\](.*\.md)' "$README" | sed 's/^.*(\(.*\))$/\1/' | sort > "${README}.old"
# Compare and update README.md
comm -23 "${README}.old" "$TEMP_FILE" | while read -r file; do
echo "Removing $file from $README"
sed -i "\|$file|d" "$README"
done
comm -13 "${README}.old" "$TEMP_FILE" | while read -r file; do
echo "Adding $file to $README"
echo "- [$file]($file)" >> "$README"
done
# Clean up
rm "$TEMP_FILE" "${README}.old"
echo "$README has been updated."