wolff
Goto Top

Linkliste aus TXT-File erstellen

Hallo zusammen,

ich möchte auf meiner Homepage ein paar Bilder (Fotos, HDR-Images, usw) anbieten.
Da diese Bilder ja relativ groß werden, dachte ich daran diese bei einem Filehoster hochzuladen - dieser bietet mir mir Möglichkeit eine Dateiliste runterzuladen.

Meine Idee war es jetzt diese Liste per Script so abarbeiten zu lassen, dass ich hinterher "fertigen HTML-Code" (also die reinen Links) habe und diese einfach immer in die Homepage einfügen kann.

Die Liste sieht folgendermaßen aus:

Filenames:

TESTFile1


Downloadlinks:

http://domain.tdl/file/iyv264


Adminlinks:

http://domain.tdl/file/iyv264e583ks9rwhc0cswfmicq2rx9f1

Jetzt müsste ja das Script diese TXT-Datei auslesen und dann zu jedem Dateinamen den Link nehmen.
Der Aufbau der Datei ist immer gleich, nur dass natürlich mehrere Dateien unter Filenames und Downloadlinks stehen - der Teil mit den Adminlinks braucht nicht beachtet zu werden.

Die Ausgabe wäre dann:
http://domain.tdl/file/iyv264       TESTFile1

oder im optimalen Fall:
<a href="http://domain.tdl/file/iyv264">TESTFILE1</a>  

Jetzt habe ich natürlich schon einige Beispiele gesehen wie man einzelne Zeilen auslesen und verarbeiten kann, jedoch traue ich mich an diese Datei nicht wirklich ran und ich muss zugeben, dass mir auch irgendwie die Idee fehlt wie das gehen könnte.

Lässt sich sowas überhaupt mit einem "einfachen" Batch/Shell Script machen?
Vom Prinzip wäre es egal ob das Script für Windows oder Linux ausgelegt ist, je nachdem wie es besser geht.

Ich hoffe es ist wenigstens etwas verständlich geworden was ich machen möchte?!

Viele Grüße,
Wulffi

Content-ID: 112336

Url: https://administrator.de/forum/linkliste-aus-txt-file-erstellen-112336.html

Ausgedruckt am: 23.12.2024 um 11:12 Uhr

bastla
bastla 25.03.2009 um 20:19:01 Uhr
Goto Top
Hallo Wolff!

Auf Basis Deines Listenbeispieles etwa so:
@echo off & setlocal
set "Liste=D:\Dateiliste.txt"  
set "Links=D:\Linkliste.txt"  

set /a Z=0
if exist "%Links%" del "%Links%"  
for /f "delims=" %%i in ('findstr /v "^$" "%Liste%"^|findstr /v /e ":"') do call :ProcessLine "%%i"  
goto :eof

:ProcessLine
set /a Z+=1
if %Z%==1 set "Datei=%~1"  
if %Z%==2 >>"%Links%" echo ^<a href=%1^>%Datei%^</a^>  
if %Z%==3 set /a Z=0
goto :eof
Grüße
bastla

[Edit] Unterprogramm etwas gekürzt [/Edit]