Der Inhalt auf technikum29.de ist kopierrechtlich geschützt, das öffentliche Spiegeln der Webseite (Mirror) ist nicht gewünscht.
Private offline-Kopien können jedoch nicht verhindert werden. Wer eine solche braucht, kann sich das folgende Unix-Shellscript zuhilfe nehmen (benutzt wget).
Dieses Programm lädt sich von der technikum29.de-Seite alle erreichbaren Dateien runter und schreibt sie fuer die lokale Benutzung um. Anschliessend wird jeder Datei ein kleine Notiz, dass es sich um eine Offline-Version handelt, hinzugefuegt und die runtergeladenen Dateien werden in einem Tarball verpackt. Als Parameter ist der gewuenschte Dateiname des Tarballs anzugeben.
(Version vom 22.12.2005, 20:00 Uhr)
#!/bin/sh # # Programm, um die technikum29.de-Seiten offline lesbar # zu machen (fuer Museumspraesentation) # # laedt Daten in ein selbsterstelltes temporaeres Verzeichnis. # # Parameter 1: Name vom Tarball, das erstellt werden soll # Wenn nicht angegeben, wird kein Tarball erstellt. # # der Server, von dem runtergeladen werden soll # (z.B. lokal oder der echte) T29SERVER="http://www.technikum29.de/" # inkl. trailing slash bitte # der Text, der jeder Seite angehaengt werden soll INFOTEXT=$(cat << INFOEND <!-- Notitz automatisch hinzugefuegt vom technikum29-Mirrorprogramm --> <div style="border: 1px solid red; background-color: white; padding: 20px; margin: 40px;"> Dies ist eine <b>lokale Kopie</b> von <a href="${T29SERVER}">${T29SERVER}</a>; erstellt am <b>`date`</b> mit der Hilfe des <a href="http://www.technikum29.de/etc/txt/mirror.shtm">technikum29 Mirror-Programms</a> </div> INFOEND ) # spezieller Text vor INFOTEXT bei der absoluten Startseite index.html START_INFOTEXT_PREFIX='<div style="position:absolute; bottom: 0; color: black; text-align: left; width: 100%">' TEMPDIR=$(mktemp -d) pushd $TEMPDIR echo Nutze ${TEMPDIR} zum Download... # Inhaltsseiten + Inhaltsbilder runterladen echo Lade Inhaltsseiten runter... wget --no-verbose --mirror --no-host-directories \ --page-requisites --convert-links \ --html-extension ${T29SERVER} # Designbilder runterladen (werden nur per CSS eingebunden und # von wget nicht erfasst) echo Lade Designelemente runter... wget --no-verbose --no-host-directories --no-parent \ -A".png,.jpg,.jpeg" --mirror ${T29SERVER}shared/img/ # bloede Individualloesung fuer das Script der Startseite T29STARTSCRIPT="shared/js/startseite.js" echo Schreibe Script ${T29STARTSCRIPT} um... sed 's#"/"+lang\[this.langcounter\]+"/"#lang[this.langcounter]+"/index.html"#' \ ${T29STARTSCRIPT} > ${T29STARTSCRIPT}.tmp mv -f ${T29STARTSCRIPT}.tmp ${T29STARTSCRIPT} # Alle HTML-Dateien mit Notiz anreichern echo Fuege allen HTML-Dateien Mirror-Notiz an... find . -name '*.html' | while read FILE do if [[ $FILE = "./index.html" ]]; # bei absoluter Startseite then echo ${START_INFOTEXT_PREFIX} >> $FILE fi echo ${INFOTEXT} >> $FILE done # Tarball machen, wenn Parameter angegeben popd if [[ -n $1 ]] then echo Erstelle Tarball ${1}... tar -jcvf "$1" --directory="${TEMPDIR}" . echo Tar.bzip ${1} erstellt. Fertig. else echo Erstelle keinen Tarball echo Dateien im Verzeichnis ${TEMPDIR}, fertig. fi # EOF