Batch Batch soll Daten aus externer Datei oder Datenbank lesen

Exxon

Newbie
Registriert
Nov. 2014
Beiträge
3
Sehr geehrtes Forum,

ich bin sehr neu hier und habe ein Problem. Ich habe schon oft nach Lösungen gesucht, auch in diesem Forum, hab aber nichts gefunden was mir wirklich weitergeholfen hat.

Ich habe eine sehr simple Batch geschrieben die lediglich Links in FireFox öffnet und diese nach Ablauf einer bestimmten Zeit wieder schleißt. Bei den Links handelt es sich um YouTube-Links, in meinem Falle Musik. Ich habe bis jetzt alle Befehle und Daten in einem Batchfile hätte jedoch gerne eine Datenbank wo ich dann hinterlegen kann(die Einträge mach ich dann alle manuell): Track-Nummer, Läge, Linkadresse. Und die Batch beinhaltet nur ein "Muster" in die die Werte eingetragen werden. Dies ist für mich wichtig, um die Ordnung in meinen Dateien zu gewährleisten. Dies habe ich bereits mit Kommentaren und co. versucht, schaut aber alles nicht schön aus.

Muster:
:Stück1
CLS
start firefox.exe "[Link aus Datenbank]"
ping www.youtube.com
CLS
timeout /t [Zeit aus Datenbank] /nobreak
taskkill /im firefox.exe
goto Stück2

(Das ist jetzt erstmal so wie ich das hatte und die Daten immer weider Manuell eingegeben habe. Hat auch alles funktioniert.)

Beispiel Gefülltes Muster:

:FVD1
CLS
start firefox.exe "http://www.youtube.com/watch?v=l-30gLaBD34"
ping www.youtube.com
CLS
timeout /t 3600 /nobreak
taskkill /im firefox.exe
goto FVD2

(der "timeout" ist die Länge des Musikstücks wenn sich jemand wundert. Der Ping an YouTube ist die Zeit, die das Video an Ladezeit benötigt :D)

Mit "[...]" hab ich einfach mal die Stellen gekennzeichnet wo dann Daten eingesetzt werden müssen.

Jetzt zu meinen finalen Fragen:

Wie kann ich eine Datenbank, ganz manuell im Editor, erstellen?/Welche Programmiersprache verwende ich dafür am besten?
(ganz simpel braucht keine optische Oberfläche oder sonstwas.)

Wie kann ich Batch sagen, dass er die Daten von dort Holen soll?


Ich bedanke mich schon einmal im voraus für eure Antworten. Ich entschuldige mich auch wenn ich Formatierungsfehler verbaut habe die gegen die Regeln verstoßen und bitte um Korrektur um meine zukünftigen Beiträge zu verbessern.

Mit freundlichen Grüßen,

Exxon
 
Zuletzt bearbeitet:
In Batch kannst du bspw. mit FOR eine Textdatei auslesen und dir dann die ausgelesenen Werte in Variablen schreiben.

Das ganze kann dann auch schön hintereinander laufen.
Dann musst du der Batch halt immer noch irgendwo mitteilen, welche Zeilen sie aus der txt holen soll.
 
Hallo simpsonsfan,

vielen Dank für die schnelle Antwort. Es funktioniert alles briliant. Vielen vielen Dank!

Mit freundlichen Grüßen,

Exxon
 
Na das ist doch schön zu hören.
Wie wählst du jetzt die Zeilen aus? Theoretisch kannst du auch noch eine zweite for-Schleife drum herum bauen, in die du dann beim Batchstart Zeilennummern übergibst. Dann müsstest du wiederum nur jeweils eine Zeile der Datenbank lesen, geht aber alles, haben andere schon gemacht.
Dann könntest du die Batch einfach mit "4,1,7" aufrufen und würdest die vierte, dann die erste, dann die siebte Zeile auslesen.
Bei Bedarf kann ich dir da gern ein bisschen was schreiben.
 
Hallo simpsonsfan,

ich habe keine Zeilen direkt angegeben sondern einen "SKIP" Befehl verbaut der dann immer die gewünschte Anzahl an Zeilen überspringt.

SKIP=(Variabel oder Zahl)

Ist dann auch bei mir keine manuelle Arbeit, da ich die Zahl via Abfrage in eine Variabel schreibe und dort einfüge.

Mit freundlichen Grüßen,

Exxon
 
Wenn das zufriedenstellend ist, dann passt's ja. Ich finde es schade, dass mittels for nicht direkt bestimmte Zeilen auswählen kann. Also nach den anfangs geskippten Zeilen läuft die Schleife halt bis zum Ende durch. Aber dazu gibt es auch Lösungen im Netz, man kann bspw. einen counter bei jedem Schleifendurchlauf hochzählen. Wenn dir aber schlicht das Skippen von Zeilen am Anfang ausreicht, wäre das ja nur unnötiger Aufwand.

Also denn, schönen Abend noch.
 

Ähnliche Themen

Zurück
Oben