Verder Terug Inhoud

4. HTML-index genereren

Als je even snel een index van je HTML-bestanden in een bepaalde directory wilt genereren, kun je dat bijvoorbeeld doen met het volgende scriptje (je hebt hiervoor wel het progje (g)awk nodig):

#!/bin/bash

dir -l *NL.html | awk -v datum=`date` 'BEGIN {print "<HTML><P><HEAD><TITLE>INDEX</TITLE></HEAD><BODY><P> Deze index is aangemaakt op: "datum "<P>"}

{print $6, $7, $8, "<A HREF="$9">"$9"</A><BR>"} 

END {print "<P></BODY></HTML>"}'>index.html

De laatste twee regels zijn hiervan het belangrijkste, je kunt eventueel nog tekst in het bovenste gedeelte toevoegen. De $6, $7 en $8 staan respectievelijk voor de maand, dag en de tijd. De $9 staat voor de bestandsnaam, door een dir -l *NL.html wordt een uitgebreide dir-listing gegenereerd, van alleen de *NL.html bestanden. Dit is slechts een (niet al te best) voorbeeld van hoe je zoiets onder Linux aan zou kunnen pakken. Als je AWK niet hebt, gebruik dan bijvoorbeeld BASH, begin bv met de opdracht "dir" en de uitvoer daarvan (met een > voor de eerste keer inlezen, huidige inhoud bestand wordt overschreven) naar een bestand te sluizen, experimenteer ermee tot je het gewenste effect krijgt en voeg zelf eventueel nog wat extra tekst en/of code toe (gebruik hiervoor de tekens >>).

Wil je bovenstaande code toch gebruiken of heb je zelf een fraaier script gegenereerd pas dan als laatste nog het volgende toe:

Pas het commando chmod a+x foo (bestandsnaam is "foo") toe op dit bestand en plaats het in de directory met html-bestanden waarvan je een index wilt genereren. Start als volgt dit scriptje op:

./foo
Vervang foo uiteraard door de naam die je aan het scriptje hebt gegeven. Zodra de uitvoering van het scriptje wordt beëindigd heb je in dezelfde directory een index.html bestand staan, op voorwaarde natuurlijk dat zich er inderdaad bestanden in die directory bevonden die voldoen aan het patroon *NL.html.


Verder Terug Inhoud