Nächste Seite: EDBS Daten verarbeiten Aufwärts: Erweiterung der Anwendung Vorherige Seite: streetspyfooter.html Inhalt Index

#### Tipps

Durch die Definition von IMAGEPATH "/usr/local/httpd/htdocs/mapserver/tmp/ als Verzeichnis in das Mapserver die erzeugten Bilddateien für den Webserver schreibt, wird sich dieses Verzeichnis im Laufe der Zeit mit Bilddaten füllen, die nicht mehr benötigt werden. Um die zu verhindern, kann auf Rechnern mit dem Betriebssystem GNU/Linux ein einfaches Shell-Skript Shell-Skriptleer geschrieben werden, das in diesem Verzeichnis alle Dateien löscht die Älter als Beispielsweise 60 min sind. Erstellt wird ein solches Skript mit einem beliebigen Editor.

    freegis@xml-2:/usr/local/httpd/htdocs/mapserver > vim ex.sh

Dieses Kommando ruft den Editor `vim` an der Kommandozeile auf. Das eigentliche Skript besteht hier in aus einem Kommando, dem verschiedene Parameter mitgegeben werden und die es veranlassen , alle Dateien, deren Name mit Demo beginnt und die älter als 60 min sind, zu löschen. Um vim zu verlassen wird mit `Esc` in den Kommandomodus gewechselt und mit `:wq` das Programm mit vorherigem speichern beendet.

    #!/bin/sh
    # löscht die von mapserver erzeugten dateien in
    # /usr/local/httpd/htdocs/mapserver/tmp/ die älter als 60 min sind

    find /usr/local/httpd/htdocs/mapserver/tmp/ -name 'DEMO*.*' -type f/
    -cmin +60 -exec rm -f -- '{}' ';'

Die erste Zeile gibt an, daß als Kommadointerpreter die sh - Shell benutzt wird. Die nächsten zwei Zeilen sind Kommentare die die Funktion dieses Skriptes beschreiben. Der eigentliche Befehl dieses Skriptes ist in der Zeile
`find /usr/local/httpd/htdocs/mapserver/tmp/ -name 'DEMO*.*' -type f -cmin +60 -exec rm -f - '' ';'` zu finden. Hier wird das Kommando `find` veranlasst auf alle Dateien (Files) `-type f` deren Name mit ,,DEMO beginnt `-name 'DEMO*.*'` und die älter als 60 Minuten sind `-cmin +60` den Löschbefehl `rm` anzuwenden.
Dieses Skript kann jetzt von der sogenannten Crontab des jeweiligen Users stündlich aufgerufen werden. Dazu wird die Crontab mit dem Befehl `crontab -e` editierbar aufgerufen.

    freegis@xml-2:/usr/local/httpd/htdocs/mapserver > crontab -e

Nun wird eine Zeile wie die Folgende erstellt. Die erste Null führt das Kommando zu jeder vollen Stunde aus. Anzahl der Minuten = 0. Weiter wird das erzeugte Skript ex.sh von dem entsprechenden Pfad aus aufgerufen an dem es liegt.

    0 * * * * /usr/local/httpd/htdocs/mapserver/ex.sh
    ~
    ~
    ~
    ~
    ~
    ~
    ~
    ~
    ~
    ~
    ~
    ~ "/tmp/crontab.24701" 1L, 50C      1,1      All

Nächste Seite: EDBS Daten verarbeiten Aufwärts: Erweiterung der Anwendung Vorherige Seite: streetspyfooter.html Inhalt Index