Download von einem Sharepoint Server

Freitag, 10. März 2006

Die Aufgabenstellung war eigentlich ganz einfach:
Download von Dateien aus einem freigegebnen Sharepointordern.

Zusätliche Hürden:
- HTTPS
- Windows Authentifizierung
- abgelaufenes Sicherheitszertifikat ignorieren
- mit Leerzeichen in Dateiname umgehen können
- Von der Kommandozeile aus unter Linux und Windows laufen

Mein erster Gedanke fiel auf WGet. Mit diesem Tool hatte ich bisher alle nötigen automatischen Downloads meistern können. Aber leider blieben alle meine Versuche ohne Erfolg. Also mußte ein neues Tool her das von einem Sharepoint Server Datein laden konnte.
Auch meine Suche nach Spezialprogammen für WEBDAV Server blieb erfolglos.
Entweder konnten sie nicht mit HTTPS umgehen, versagten ihren Dienst bei der Windows Authentifizierung oder sie kosteten Geld.
Nach einigem Suchen und Herumstöbern in den Newsgroups bin ich bei CURL gelandet. Ein, wie ich zugeben muss, von mir bis dahin nicht viel beachtetes Tool, das es aber in sich hat.

Von der Website:
curl is a command line tool for transferring files with URL syntax, supporting FTP, FTPS, TFTP, HTTP, HTTPS, TELNET, DICT, FILE and LDAP. curl supports HTTPS certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, cookies, user+password authentication (Basic, Digest, NTLM, Negotiate, kerberos...), file transfer resume, proxy tunneling and a busload of other useful tricks.

Also alles was ich brauchte in diesem Tool vereint. Nach einigem ausprobieren und der Erkenntnis, dass --anyauth nicht mit meinem Server funktioniert, sonderm ich explizit --ntlm zur Authentifizierung angeben muss kam ich bei folgender Befehlszeile an:
curl -o c:/temp/DATEI.txt --ntlm -k -u DOMAIN/user:passwd https://servername/DATEI MIT LEERZEICHEN.txt

Wichtig war in meinem Fall noch der Schalter -k/--insecure der den Download auch mit abgelaufenem Zertifikat zuläßt.

Wer des öfteren *nix Tools in einer Windowsumgebung braucht sollte auf alle Fälle Cygwin installieren. Einfach Setup.exe herunterladen und starten, Packete auswählen und schon ist die *nix Umgebung unter Windows fertig. Auch ein kostenloser X-Server kann über das Setupprogramm installiert werden.



Trackbacks


Trackback-URL für diesen Eintrag
    Keine Trackbacks

Kommentare


    #1 Joachim am 06/29/06 um 09:09
    ich hätte da noch zwei fragen zu curl:

    1.) auf der curl-seite kann ich zwar einiges downloaden, allerdings scheint das ganze unkompilliert zu sein. wie bringe ich das auf einer windows xp-kiste zum laufen?

    2.) kann ich mit dem tool auch ganze sharepoint-docbibliotheken kopieren? quasi nicht ein spezielles dokument, sondern alle dokumente in einer bibliothek?

    danke

    Mit freundlichen Grüßen
    Joachim Eckerl
    #1.1 Nicolai Stoy am 07/05/06 um 09:23
    Hi Joachim,

    Zu 1.
    Lade einfach die folgenden Pakete herunter und dann kannst Du curl auch ohne Cygwin unter Windows benutzen.
    http://curl.freemirror.de/download/curl-7.15.4-win32-ssl-sspi.zip
    und
    http://curl.haxx.se/download/openssl-0.9.7e-win32-bin.zip

    Zu 2.
    Leider habe ich da auch keine Funktion für gefunden. Ich habe dann einfach mit curl die \"/Forms/AllItems.aspx\" des Verzeichnisses vorher heruntergeladen, diese Datei dann von meinem Skript nach Dateinamen durchsuchen lassen und dann heruntergeladen.
    #2 Uwe am 05/29/12 um 10:05
    Später Kommentar, deshalb um so mehr: Danke für Deine Befehlszeile, war bei Google ziemlich weit oben und hat mir genau so geholfen, wie ich es benötigt habe.

    Mein "SharePoint Warmup Script" läuft jetzt alle 5 Minuten und macht das Teil hoffentlich schnell :-)

Kommentar schreiben

Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.
Um einen Kommentar hinterlassen zu können, erhalten Sie nach dem Kommentieren eine E-Mail mit Aktivierungslink an ihre angegebene Adresse.

Um maschinelle und automatische Übertragung von Spamkommentaren zu verhindern, bitte die Zeichenfolge im dargestellten Bild in der Eingabemaske eintragen. Nur wenn die Zeichenfolge richtig eingegeben wurde, kann der Kommentar angenommen werden. Bitte beachten Sie, dass Ihr Browser Cookies unterstützen muss, um dieses Verfahren anzuwenden.
CAPTCHA