Mi solución final fue el siguiente código, que combina dos sugerencias. ¡Gracias chicos!
for file in *.html; do
tag=$(xmlstarlet format --html $file | xmlstarlet select --html --template --value-of '//html/body/div/h1')
mv "$file" "${tag}.html"
done
¡Funcionó muy bien para mis archivos!
Педантично, нет. События перезапуска и выключения питания — это концепции пользовательского пространства, а не концепции ядра. Мягкое отключение питания -или перезапуск выполняется systemd в большинстве современных дистрибутивов Linux. Это также инструмент пользовательского пространства, который проверяет файловые системы при запуске -и монтирует их, если они находятся в пригодном для использования состоянии.
Да, если драйверы файловой системы реализуют ведение журнала для обеспечения согласованности файловых систем даже в случае некорректного завершения работы или перезапуска.
Да, если ядро предоставляет API, с помощью которого инструменты пользовательского пространства могут проверять файловые системы и управлять ими.