Provided by: linkchecker_8.6-2_amd64 bug

NAME

       linkchecker  -  Kommandozeilenprogramm  zum  Prüfen  von HTML Dokumenten und Webseiten auf
       ungültige Verknüpfungen

SYNTAX

       linkchecker [Optionen] [Datei-oder-URL]...

BESCHREIBUNG

       LinkChecker beinhaltet

       •      rekursives Prüfen und Multithreading

       •      Ausgabe  als  farbigen  oder  normalen  Text,  HTML,  SQL,  CSV,  XML  oder   einen
              Sitemap-Graphen in verschiedenen Formaten

       •      Unterstützung   von  HTTP/1.1,  HTTPS,  FTP,  mailto:,  news:,  nntp:,  Telnet  und
              Verknüpfungen auf lokale Dateien

       •      Einschränkung der Linküberprüfung mit URL-Filter,

       •      Proxy-Unterstützung

       •      Benutzer/Passwort Authorisierung für HTTP, FTP und Telnet

       •      Unterstützung des robots.txt Protokolls

       •      Unterstützung für Cookies

       •      Unterstützung für HTML5

       •      HTML- und CSS-Syntaxprüfung

       •      Antivirusprüfung

       •      ein Kommandozeilenprogramm, GUI und web interface

BEISPIELE

       Der  häufigste  Gebrauchsfall  prüft  die  angegebene  Domäne  rekursiv,  inklusive  aller
       einzelnen nach außen zeigenden Verknüpfungen:
         linkchecker http://www.example.net/
       Beachten  Sie  dass  dies die komplette Domäne überprüft, welche aus mehreren tausend URLs
       bestehen kann. Benutzen Sie die Option -r, um die Rekursionstiefe zu beschränken.
       Prüfe keine mailto: URLs. Alle anderen Verknüpfungen werden wie üblich geprüft:
         linkchecker --ignore-url=^mailto: mysite.example.org
       Überprüfung einer lokalen HTML Datei unter Unix:
         linkchecker ../bla.html
       Überprüfung einer lokalen HTML Datei unter Windows:
         linkchecker c:\temp\test.html
       Sie können den http:// URL Anteil weglassen wenn die Domäne mit www. beginnt:
         linkchecker www.example.com
       Sie können den ftp:// URL Anteil weglassen wenn die Domäne mit ftp. beginnt:
         linkchecker -r0 ftp.example.org
       Erzeuge einen Sitemap Graphen und konvertiere ihn mit dem graphviz dot Programm:
         linkchecker -odot -v www.example.com | dot -Tps > sitemap.ps

OPTIONEN

   Allgemeine Optionen
       -fDATEINAME, --config=DATEINAME
              Benutze  DATEINAME  als  Konfigurationsdatei.  Standardmäßig  benutzt   LinkChecker
              ~/.linkchecker/linkcheckerrc.

       -h, --help
              Hilfe! Gebe Gebrauchsanweisung für dieses Programm aus.

       --stdin
              Lese Liste von URLs zum Prüfen von der Standardeingabe, getrennt durch Leerzeichen.

       -tNUMMER, --threads=NUMMER
              Generiere  nicht  mehr  als  die angegebene Anzahl von Threads. Standard Anzahl von
              Threads ist 100. Um Threads zu deaktivieren, geben Sie eine nicht  positive  Nummer
              an.

       -V, --version
              Gebe die Version aus und beende das Programm.

   Ausgabeoptionen
       --check-css
              Prüfe Syntax von CSS URLs mit dem W3C Online Validator.

       --check-html
              Prüfe Syntax von HTML URLs mit dem W3C Online Validator.

       --complete
              Gebe alle geprüften URLs aus. Standard ist es, doppelte URLs nur einmal auszugeben.

       -DNAME, --debug=NAME
              Gebe  Testmeldungen aus für den angegebenen Logger. Verfügbare Logger sind cmdline,
              checking,cache, gui, dns  und  all.  Die  Angabe  all  ist  ein  Synonym  für  alle
              verfügbaren  Logger.  Diese  Option kann mehrmals angegeben werden, um mit mehr als
              einem Logger  zu  testen.  Um  akkurate  Ergebnisse  zu  erzielen,  werden  Threads
              deaktiviert.

       -FTYP[/ENKODIERUNG][/DATEINAME], --file-output=TYP[/ENKODIERUNG][/DATEINAME]
              Ausgabe  in eine Datei namens linkchecker-out.TYP, $HOME/.linkchecker/blacklist bei
              blacklist  Ausgabe,  oder  DATEINAME  falls  angegeben.  Das  ENCODING   gibt   die
              Ausgabekodierung  an.  Der  Standard ist das der lokalen Spracheinstellung. Gültige
              Enkodierungen    sind     aufgelistet     unter     http://docs.python.org/library/
              codecs.html#standard-encodings.
              Der  DATEINAME  und ENKODIERUNG Teil wird beim Ausgabetyp none ignoriert, ansonsten
              wird die Datei überschrieben falls sie existiert. Sie können diese Option mehr  als
              einmal  verwenden.  Gültige  Ausgabetypen sind text, html, sql, csv, gml, dot, xml,
              sitemap,   none   oder   blacklist.   Standard   ist   keine   Dateiausgabe.    Die
              unterschiedlichen  Ausgabetypen  sind weiter unten dokumentiert. Beachten Sie, dass
              Sie mit der Option -o none jegliche Ausgaben auf der Konsole verhindern können.

       --no-status
              Gebe keine Statusmeldungen aus.

       --no-warnings
              Gebe keine Warnungen aus. Standard ist die Ausgabe von Warnungen.

       -oTYP[/ENKODIERUNG], --output=TYP[/ENKODIERUNG]
              Gib Ausgabetyp als text,  html,  sql,  csv,  gml,  dot,  xml,  sitemap,  none  oder
              blacklist  an.  Stadard  Typ  ist  text.  Die verschiedenen Ausgabetypen sind unten
              dokumentiert.
              Das ENCODING gibt die  Ausgabekodierung  an.  Der  Standard  ist  das  der  lokalen
              Spracheinstellung.     Gültige     Enkodierungen     sind     aufgelistet     unter
              http://docs.python.org/library/codecs.html#standard-encodings.

       -q, --quiet
              Keine Ausgabe, ein Alias für -o none. Dies ist nur in Verbindung mit -F nützlich.

       --scan-virus
              Prüfe Inhalt von URLs auf Viren mit ClamAV.

       --trace
              Trace-Information ausgeben.

       -v, --verbose
              Gebe alle geprüften URLs aus. Standard ist es, nur fehlerhafte URLs  und  Warnungen
              auszugeben.

       -WREGEX, --warning-regex=REGEX
              Definieren  Sie  einen regulären Ausdruck der eine Warnung ausgibt falls er auf den
              Inhalt einer geprüften URL zutrifft. Dies gilt nur für gültige Seiten deren  Inhalt
              wir bekommen können.
              Benutzen Sie dies, um nach Seiten zu suchen, welche bestimmte Fehler enthalten, zum
              Beispiel "Diese Seite ist umgezogen" oder "Oracle Applikationsfehler".
              Man beachte, dass mehrere Werte in dem regulären Ausdruck kombiniert werden können,
              zum Beispiel "(Diese Seite ist umgezogen|Oracle Applikationsfehler)".
              Siehe Abschnitt REGULAR EXPRESSIONS für weitere Infos.

       --warning-size-bytes=NUMMER
              Gebe  eine Warnung aus, wenn die Inhaltsgröße bekannt ist und die angegebene Anzahl
              von Bytes übersteigt.

   Optionen zum Prüfen
       -a, --anchors
              Prüfe HTTP Ankerverweise. Standard ist, Ankerverweise nicht zu prüfen. Diese Option
              aktiviert die Ausgabe der Warnung url-anchor-not-found.

       -C, --cookies
              Akzeptiere  und  sende  HTTP  Cookies nach der RFC 2109. Lediglich Cookies, die zum
              ursprünglichen Server  zurückgesendet  werden,  werden  akzeptiert.  Gesendete  und
              akzeptierte Cookies werden als zusätzlicheLoginformation aufgeführt.

       --cookiefile=DATEINAME
              Lese eine Datei mit Cookie-Daten. Das Cookie Datenformat wird weiter unten erklärt.

       --ignore-url=REGEX
              URLs  welche  dem  angegebenen  regulären Ausdruck entsprechen werden ignoriert und
              nicht geprüft.
              Diese Option kann mehrmals angegeben werden.
              Siehe Abschnitt REGULAR EXPRESSIONS für weitere Infos.

       -NNAME, --nntp-server=NAME
              Gibt  ein  NNTP  Rechner  für  news:  Links.  Standard  ist  die  Umgebungsvariable
              NNTP_SERVER.  Falls  kein Rechner angegeben ist, wird lediglich auf korrekte Syntax
              des Links geprüft.

       --no-follow-url=REGEX
              Prüfe URLs, welche dem angegebenen regulären Ausdruck entsprechen, aber führe keine
              Rekursion durch.
              Diese Option kann mehrmals angegeben werden.
              Siehe Abschnitt REGULAR EXPRESSIONS für weitere Infos.

       -p, --password
              Liest  ein  Passwort  von  der  Kommandozeile  und  verwende  es  für  HTTP und FTP
              Autorisierung. Für FTP ist das Standardpasswort anonymous@. Für HTTP gibt  es  kein
              Standardpasswort. Siehe auch -u.

       -PNUMMER, --pause=NUMMER
              Pausiere  die  angegebene  Anzahl  von Sekunden zwischen zwei aufeinander folgenden
              Verbindungen zum demselben Rechner. Standard ist keine Pause zwischen Verbindungen.

       -rNUMMER, --recursion-level=NUMMER
              Prüfe rekursiv alle URLs bis zu der angegebenen Tiefe. Eine negative Tiefe  bewirkt
              unendliche Rekursion. Standard Tiefe ist unendlich.

       --timeout=NUMMER
              Setze  den  Timeout  für  TCP-Verbindungen in Sekunden. Der Standard Timeout ist 60
              Sekunden.

       -uNAME, --user=NAME
              Verwende den angegebenen Benutzernamen für HTTP und FTP Autorisierung. Für FTP  ist
              der Standardname anonymous. Für HTTP gibt es keinen Standardnamen. Siehe auch -p.

       --user-agent=STRING
              Gibt den User-Agent an, der zu HTTP-Servern geschickt wird, z.B. "Mozilla/4.0". Der
              Standard ist "LinkChecker/X.Y", wobei X.Y die aktuelle Version von LinkChecker ist.

KONFIGURATIONSDATEIEN

       Konfigurationsdateien können alle obigen Optionen enthalten.  Sie  können  zudem  Optionen
       enthalten,   welche   nicht   auf   der   Kommandozeile   gesetzt   werden  können.  Siehe
       linkcheckerrc(5) für mehr Informationen.

AUSGABETYPEN

       Beachten Sie, dass standardmäßig  nur  Fehler  und  Warnungen  protokolliert  werden.  Sie
       sollten  die --verbose Option benutzen, um eine komplette URL Liste zu erhalten, besonders
       bei Ausgabe eines Sitemap-Graphen.

       text   Standard Textausgabe in "Schlüssel: Wert"-Form.

       html   Gebe URLs  in  "Schlüssel:  Wert"-Form  als  HTML  formatiert  aus.  Besitzt  zudem
              Verknüpfungen auf die referenzierten Seiten. Ungültige URLs haben Verknüpfungen zur
              HTML und CSS Syntaxprüfung angehängt.

       csv    Gebe Prüfresultat in CSV-Format aus mit einer URL pro Zeile.

       gml    Gebe Vater-Kind Beziehungen zwischen verknüpften URLs als GML Graphen aus.

       dot    Gebe Vater-Kind Beziehungen zwischen verknüpften URLs als DOT Graphen aus.

       gxml   Gebe Prüfresultat als GraphXML-Datei aus.

       xml    Gebe Prüfresultat als maschinenlesbare XML-Datei aus.

       sitemap
              Protokolliere   Prüfergebnisse   als    XML    Sitemap    dessen    Format    unter
              http://www.sitemaps.org/protocol.html dokumentiert ist.

       sql    Gebe  Prüfresultat  als  SQL Skript mit INSERT Befehlen aus. Ein Beispielskript, um
              die initiale SQL Tabelle zu erstellen ist unter create.sql zu finden.

       blacklist
              Für Cronjobs geeignet. Gibt das Prüfergebnis in eine Datei ~/.linkchecker/blacklist
              aus,  welche  nur  Einträge  mit  fehlerhaften URLs und die Anzahl der Fehlversuche
              enthält.

       none   Gibt nichts aus. Für Debugging oder Prüfen des Rückgabewerts geeignet.

REGULÄRE AUSDRÜCKE

       LinkChecker  akzeptiert  Pythons   reguläre   Ausdrücke.   Siehe   http://docs.python.org/
       howto/regex.html für eine Einführung.

       Eine  Ergänzung  ist,  dass  ein  regulärer  Ausdruck  negiert  wird  falls  er  mit einem
       Ausrufezeichen beginnt.

COOKIE-DATEIEN

       Eine Cookie-Datei enthält Standard HTTP-Header (RFC  2616)  mit  den  folgenden  möglichen
       Namen:

       Scheme (optional)
              Setzt das Schema für das die Cookies gültig sind; Standardschema ist http.

       Host (erforderlich)
              Setzt die Domäne für die die Cookies gültig sind.

       Path (optional)
              Gibt den Pfad für den die Cookies gültig sind; Standardpfad ist /.

       Set-cookie (optional)
              Setzt den Cookie Name/Wert. Kann mehrmals angegeben werden.

       Mehrere  Einträge  sind  durch  eine Leerzeile zu trennen. Das untige Beispiel sendet zwei
       Cookies zu allen URLs die mit http://example.org/hello/ beginnen, und eins zu  allen  URLs
       die mit https://example.org beginnen:

        Host: example.com
        Path: /hello
        Set-cookie: ID="smee"
        Set-cookie: spam="egg"

        Scheme: https
        Host: example.org
        Set-cookie: baggage="elitist"; comment="hologram"

PROXY UNTERSTÜTZUNG

       Um  einen  Proxy  unter  Unix  oder  Windows  zu  benutzen,  setzen  Sie  die $http_proxy,
       $https_proxy oder $ftp_proxy Umgebungsvariablen auf die Proxy URL. Die URL sollte die Form
       http://[user:pass@]host[:port]  besitzen. LinkChecker erkennt auch die Proxy-Einstellungen
       des Internet Explorers auf einem Windows-System. Auf einem Mac benutzen Sie  die  Internet
       Konfiguration.  Sie  können  eine  komma-separierte Liste von Domainnamen in der $no_proxy
       Umgebungsvariable setzen, um alle Proxies  für  diese  Domainnamen  zu  ignorieren.  Einen
       HTTP-Proxy unter Unix anzugeben sieht beispielsweise so aus:

         export http_proxy="http://proxy.example.com:8080"

       Proxy-Authentifizierung wird ebenfalls unterstützt:

         export http_proxy="http://user1:mypass@proxy.example.org:8081"

       Setzen eines Proxies unter der Windows Befehlszeile:

         set http_proxy=http://proxy.example.com:8080

Durchgeführte Prüfungen

       Alle  URLs  müssen  einen ersten Syntaxtest bestehen. Kleine Kodierungsfehler ergeben eine
       Warnung, jede andere ungültige Syntaxfehler sind Fehler. Nach dem Bestehen des Syntaxtests
       wird  die  URL  in  die  Schlange zum Verbindungstest gestellt. Alle Verbindungstests sind
       weiter unten beschrieben.

       HTTP Verknüpfungen (http:, https:)
              Nach Verbinden zu dem gegebenen HTTP-Server wird der eingegebene  Pfad  oder  Query
              angefordert.  Alle  Umleitungen  werden  verfolgt,  und falls ein Benutzer/Passwort
              angegeben wurde werden diese falls notwendig als Authorisierung benutzt.  Permanent
              umgezogene  Webseiten werden als Warnung ausgegeben. Alle finalen HTTP Statuscodes,
              die nicht dem Muster 2xx entsprechen, werden als Fehler ausgegeben. Der Inhalt  von
              HTML-Seiten wird rekursiv geprüft.

       Lokale Dateien (file:)
              Eine  reguläre,  lesbare  Datei  die  geöffnet werden kann ist gültig. Ein lesbares
              Verzeichnis ist ebenfalls gültig. Alle anderen Dateien, zum Beispiel Gerätedateien,
              unlesbare  oder  nicht  existente  Dateien  ergeben einen Fehler. HTML- oder andere
              untersuchbare Dateiinhalte werden rekursiv geprüft.

       Mail-Links (mailto:)
              Ein  mailto:-Link  ergibt  eine  Liste  von  E-Mail-Adressen.  Falls  eine  Adresse
              fehlerhaft   ist,   wird  die  ganze  Liste  als  fehlerhaft  angesehen.  Für  jede
              E-Mail-Adresse werden die folgenden Dinge geprüft:
                1) Prüfe die Syntax der Adresse, sowohl den Teil vor als auch nach dem @-Zeichen.
                2) Schlage den MX DNS-Datensatz nach. Falls kein  MX  Datensatz  gefunden  wurde,
              wird ein Fehler ausgegeben.
                3) Prüfe, ob einer der Mail-Rechner eine SMTP-Verbindung akzeptiert.
                   Rechner mit höherer Priorität werden zuerst geprüft.
                   Fall kein Rechner SMTP-Verbindungen akzeptiert, wird eine Warnung ausgegeben.
                4)  Versuche, die Adresse mit dem VRFY-Befehl zu verifizieren. Falls eine Antwort
              kommt, wird die verifizierte Adresse als Information ausgegeben.

       FTP-Links (ftp:)

              Für FTP-Links wird Folgendes geprüft:

                1) Eine Verbindung zum angegeben Rechner wird aufgebaut
                2)  Versuche,  sich  mit  dem  gegebenen  Nutzer  und  Passwort  anzumelden.  Der
              Standardbenutzer ist “anonymous“, das Standardpasswort ist “anonymous@“.
                3) Versuche, in das angegebene Verzeichnis zu wechseln
                4) Liste die Dateien im Verzeichnis auf mit dem NLST-Befehl

       Telnet-Links (“telnet:“)

                Versuche, zu dem angegeben Telnetrechner zu verginden und falls Benutzer/Passwort
              angegeben sind, wird versucht, sich anzumelden.

       NNTP-Links (“news:“, “snews:“, “nntp“)

                Versuche, zu dem angegebenen NNTP-Rechner eine Verbindung aufzubaucne. Falls eine
              Nachrichtengruppe  oder  ein bestimmter Artikel angegeben ist, wird versucht, diese
              Gruppe oder diesen Artikel vom Rechner anzufragen.

       Nicht unterstützte Links (“javascript:“, etc.)

                Ein nicht unterstützter Link wird nur eine Warnung  ausgeben.  Weitere  Prüfungen
              werden nicht durchgeführt.

                Die komplette Liste von erkannten, aber nicht unterstützten Links ist in der
                Quelldatei   linkcheck/checker/unknownurl.py.   Die  bekanntesten  davon  dürften
              JavaScript-Links sein.

Rekursion

       Bevor eine URL rekursiv geprüft wird, hat diese mehrere  Bedingungen  zu  erfüllen.  Diese
       werden in folgender Reihenfolge geprüft:

       1. Eine URL muss gültig sein.

       2.  Der  URL-Inhalt  muss  analysierbar sein. Dies beinhaltet zur Zeit HTML-Dateien, Opera
       Lesezeichen, und Verzeichnisse. Falls ein Dateityp nicht erkannt wird, (zum Beispiel  weil
       er keine bekannte HTML-Dateierweiterung besitzt, und der Inhalt nicht nach HTML aussieht),
       wird der Inhalt als nicht analysierbar angesehen.

       3. Der URL-Inhalt muss ladbar sein. Dies ist normalerweise  der  Fall,  mit  Ausnahme  von
       mailto: oder unbekannten URL-Typen.

       4. Die maximale Rekursionstiefe darf nicht überschritten werden. Diese wird mit der Option
       --recursion-level konfiguriert und ist standardmäßig nicht limitiert.

       5. Die URL darf nicht in der Liste von ignorierten URLs sein. Die ignorierten URLs  werden
       mit der Option --ignore-url konfiguriert.

       6.  Das Robots Exclusion Protocol muss es erlauben, dass Verknüpfungen in der URL rekursiv
       verfolgt werden  können.  Dies  wird  geprüft,  indem  in  den  HTML  Kopfdaten  nach  der
       "nofollow"-Direktive gesucht wird.

       Beachten  Sie,  dass  die  Verzeichnisrekursion  alle Dateien in diesem Verzeichnis liest,
       nicht nur eine Untermenge wie bspw. index.html*.

BEMERKUNGEN

       URLs von der Kommandozeile die mit ftp. beginnen werden wie ftp://ftp. behandelt, URLs die
       mit www. beginnen wie http://www.. Sie können auch lokale Dateien angeben.

       Falls  sich  Ihr  System  automatisch mit dem Internet verbindet (z.B. mit diald), wird es
       dies tun wenn Sie Links prüfen, die nicht auf Ihren lokalen Rechner verweisen Benutzen Sie
       die Option --ignore-url, um dies zu verhindern.

       Javascript Links werden nicht unterstützt.

       Wenn Ihr System keine Threads unterstützt, deaktiviert diese LinkChecker automatisch.

       Sie können mehrere Benutzer/Passwort Paare in einer Konfigurationsdatei angeben.

       Beim  Prüfen  von news: Links muß der angegebene NNTP Rechner nicht unbedingt derselbe wie
       der des Benutzers sein.

UMGEBUNG

       NNTP_SERVER - gibt Standard NNTP Server an
       http_proxy - gibt Standard HTTP Proxy an
       ftp_proxy - gibt Standard FTP Proxy an
       no_proxy  -  kommaseparierte  Liste  von  Domains,  die  nicht  über  einen   Proxy-Server
       kontaktiert werden
       LC_MESSAGES, LANG, LANGUAGE - gibt Ausgabesprache an

RÜCKGABEWERT

       Der Rückgabewert ist 2 falls

       •      ein Programmfehler aufgetreten ist.

       Der Rückgabewert ist 1 falls

       •      ungültige Verknüpfungen gefunden wurden oder

       •      Warnungen gefunden wurden und Warnungen aktiviert sind

       Sonst ist der Rückgabewert Null.

LIMITIERUNGEN

       LinkChecker  benutzt  Hauptspeicher  für  jede  zu  prüfende URL, die in der Warteschlange
       steht. Mit tausenden solcher URLs kann die Menge des benutzten  Hauptspeichers  sehr  groß
       werden. Dies könnte das Programm oder sogar das gesamte System verlangsamen.

DATEIEN

       ~/.linkchecker/linkcheckerrc - Standardkonfigurationsdatei
       ~/.linkchecker/blacklist - Standard Dateiname der blacklist Logger Ausgabe
       linkchecker-out.TYP - Standard Dateiname der Logausgabe
       http://docs.python.org/library/codecs.html#standard-encodings     -     gültige    Ausgabe
       Enkodierungen
       http://docs.python.org/howto/regex.html - Dokumentation zu regulären Ausdrücken

SIEHE AUCH

       linkcheckerrc(5)

AUTHOR

       Bastian Kleineidam <bastian.kleineidam@web.de>

COPYRIGHT

       Copyright © 2000-2014 Bastian Kleineidam