Достаточно веских причин для явного отключения автоматических индексов каталогов в apache или других веб-серверах.Или, например, вы можете включить в индекс только определенные типы файлов.В таких случаях вам может потребоваться статически сгенерированный файл index.html для определенных папок.
Этого легко достичь с помощью tree - минималистичная утилита, доступная в большинстве дистрибутивов Linux (например, Ubuntu / Debian: sudo apt install tree
) и которая может генерировать простой текст, XML, JSON или HTML-вывод.
Создание индекса каталога HTML на один уровень глубиной:
tree -H '.' -L 1 --noreport --charset utf-8 > index.html
Включать только определенные типы файлов, которые соответствуют шаблону глобуса, например *.zip
files:
tree -H '.' -L 1 --noreport --charset utf-8 -P "*.zip" > index.html
Аргумент к -H
- это то, чтобудет использоваться в качестве базового href, поэтому вы можете передать относительный путь, такой как .
, или абсолютный путь от корня сети, такой как /files
.-L 1
ограничивает перечисление только текущим каталогом.
Мне нужен генератор индекса, который я мог бы стилизовать так, как я хотел, так что в итоге я использовал этот скрипт - в дополнение к настраиваемому стилю скрипт также рекурсивно генерирует файл index.html
во всех вложенных подкаталогах.