sky5000i
Goto Top

Datei aus .txt lister erstellen

Hallo liebe Profis
habe mal wieder eine Frage an euch!

wie kann ich aus einer .txt liste mit einer .bat diese liste einlesen und eine neue datei Schreiben lassen
in dem Ordner wo die .bat liegt?

Beispiel:

test.txt
test1.txt
test2.txt

würde mich über eure Hilfe freuen bis dann und DANKE schon mal

Mfg
Sky

Content-ID: 213702

Url: https://administrator.de/forum/datei-aus-txt-lister-erstellen-213702.html

Ausgedruckt am: 23.12.2024 um 04:12 Uhr

Endoro
Endoro 08.08.2013 um 10:09:43 Uhr
Goto Top
Hallo,
ich würde dir empfehlen, den Befehl copy anzuschauen.
lg.
Snowman25
Snowman25 08.08.2013 um 10:13:02 Uhr
Goto Top
Hallo @sky5000i,

es gibt viele Möglichkeiten, eine Datei zu lesen und in eine andere zu schreiben. Was genau willst du denn damit machen?
Momentan hört es sich so an, als würde eine einfache Kopie reichen:
COPY test.txt test1.txt

Eine Zeichenweise Kopie von TEXT-Dateien lässt sich so machen:
TYPE test.txt>test1.txt
oder auch so:
MORE test.txt>test1.txt
Dabei bietet dir more wesentlich mehr Optionen als type. Siehe auch:
TYPE /?
	und
MORE /?

Wenn du den Text Zeilen- oder Stückchenweise parsen und verarbeiten möchtest, brauchst du allerdings eine Schleife:
FOR /F "tokens=*" %i IN (test.txt) DO (  
	<deine Befehle>
)

Ich hoffe, das hilft.

Gruß,
@Snowman25
sky5000i
sky5000i 08.08.2013 um 10:43:04 Uhr
Goto Top
Hallo Danke
aber da ich keine ahnung davon habe, was meinst du mit Befehle....

FOR /F "tokens=*" %i IN (list.txt) DO (
<deine Befehle> und was soll hier rein um die Datein zu Schreiben ???????
)

MfG
Sky
SlainteMhath
SlainteMhath 08.08.2013 um 11:05:14 Uhr
Goto Top
Moin,

was soll denn genau passieren mit dem Text in der Datei? Ein einfaches Duplizieren der Datei erreichst du mit copy.

Ausserdem hängt wohl deine "?"-Taste.

lg,
Slainte.
bastla
bastla 08.08.2013 um 11:33:03 Uhr
Goto Top
Hallo sky5000i!

Sehr klar ist Deine Fragestellung nun wirklich nicht, aber zumindest hinsichtlich
in dem Ordner wo die .bat liegt
ein Tipp:
"%~dp0"
Grüße
bastla
Snowman25
Snowman25 08.08.2013 um 11:38:25 Uhr
Goto Top
Hallo @sky5000i,

am besten du schaust dir mal ein grundsätzliches Batch-Tutorial an.
Zum Beispiel: Windows Batch Grundlagen

Gruß,
@Snowman25
Endoro
Endoro 08.08.2013 um 11:41:51 Uhr
Goto Top
Zitat von @sky5000i:
aber da ich keine ahnung davon habe, was meinst du mit Befehle....
Ein minimales Verständnis von Kommandoscripten sollte vorhanden sein. Sonst hat das keinen Sinn.
Es gelang dir auch bisher nicht, deine Anforderungen präzise zu formulieren.
lg.
sky5000i
sky5000i 08.08.2013 um 11:44:02 Uhr
Goto Top
Also noch mal

in der liste stehen unter einander Wörter, aus dieser liste soll eine datei geschrieben werden!
Jedes wort eine Neu Datei

a.txt
b.txt
c.txt

das ist eigentlich alles

leider geht es nicht so wie Ihr hier Schreibt

MfG
Sky
Snowman25
Snowman25 08.08.2013 um 11:58:04 Uhr
Goto Top
Das wird schwierig, sobald du mehr als 26 Wörter hast.
Wieso möchtest du das machen?
Biber
Biber 08.08.2013 um 12:05:31 Uhr
Goto Top
[OT]
Zitat von @Snowman25:
Das wird schwierig, sobald du mehr als 26 Wörter hast.
Glaube nicht, dass es so viele kennt.
Wieso möchtest du das machen?
Und warum schreitet niemand ein?

[/OT]
Endoro
Endoro 08.08.2013 aktualisiert um 12:12:39 Uhr
Goto Top
Nun gut, bis 26 Wörter geht es so:
@echo off &setlocal
set "alfa=0abcdefghijklmnopqrstuvwxyz"  
for /f "delims=" %%a in (liste.txt) do call:process "%%~a"  
goto:eof

:process
set "word=%~1"  
set /a counter+=1
setlocal enabledelayedexpansion
SET "char=!alfa:~%counter%,1!"  
>"%char%.txt" ECHO(!word!  
endlocal
goto:eof
lg.

PS:
Zitat von @Biber:
Und warum schreitet niemand ein?
Wer hat die Permission dazu?
sky5000i
sky5000i 12.08.2013 um 09:23:45 Uhr
Goto Top
Ja super das würde gehen! Danke erst mal face-smile
Geht es auch das nicht abcde erscheint sondern das oder die Worte in der Liste? ERSCHEINEN also geschrieben werden

Wie in der Liste

Beispiel:

Hamburg.txt
Hamburg Langenhorn.txt usw....

MfG
Sky

PS. Ich habe leider keinen PLAN von diesen sachen