Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Inhalt aus TXT-Dateien zusammenfassen

Frage Entwicklung Batch & Shell

Mitglied: Oli-nux

Oli-nux (Level 1) - Jetzt verbinden

06.07.2007, aktualisiert 08.07.2007, 17241 Aufrufe, 17 Kommentare

Joinen von txt's zu einer txt

Hallo,

ich habe hier über 700 .txt-Dateien.
Ich möchte den Inhalt bestimmter TXT-Dateien zusammenfassen um somit zum Schluß weniger Dateien zu haben als jetzt.

Hoffe mir kann jemand dafür eine Batch schreiben?
Falls das Unter Dos auch so möglich sein sollte bitte ich um die genauen Befehle.

Das Ganze sollte dann so aussehen, dass ich über die CMD (Eingabeaufforderung) folgenden Befehl verwenden kann:
[batchname.bat] [inputfile/s] [outputfile]
Beispiel:
[txt.join.batch.bat] [txt1.txt 123.txt irgendwas.txt] [gejointe.txt]

Es soll auch so sein, dass der Inhalt der einzelnen Txt's im Nachhinein auch Zeile für Zeile in der neuen Txt steht und nicht in einer einzigen Zeile.
Also quasi den Inhalt so übernehmen wie er in den txt's schon ist!

Beispiel:
Adam
Thomas
Max
.....

und nicht:
Adam Thomas Max ....

Das Ganze wäre dringend!
Mitglied: geTuemII
06.07.2007 um 17:28 Uhr
Dann poste uns doch mal den Code, den du bis jetzt erstellt hast und teile uns am besten genau mit, an welcher Stelle du Fehlermeldungen oder sonstige Probleme hast.

geTuemII
Bitte warten ..
Mitglied: Oli-nux
06.07.2007 um 18:21 Uhr
Dann poste uns doch mal den Code, den du bis
jetzt erstellt hast und teile uns am besten
genau mit, an welcher Stelle du
Fehlermeldungen oder sonstige Probleme hast.

geTuemII
Ich hab selber garnichts geschrieben weil ich es nicht kann, deshalb suche ich ja jemanden der mir sowas erstellt.
Bitte warten ..
Mitglied: 13100
06.07.2007 um 19:02 Uhr
lies dir den text von copy /? durch.
Bitte warten ..
Mitglied: bastla
06.07.2007 um 19:47 Uhr
Hallo Oli-nux!

Vielleicht so:
01.
@echo off 
02.
if exist %1 del %1 
03.
:Loop 
04.
if "%~2" neq "" type %2>>%1 & shift /2 & goto :Loop
Aufzurufen ist der Batch mit
01.
batchname.bat outputfile inputfile/s
wobei als inputfile/s auch Wildcards zulässig sind (etwa *.txt). Empfehlenswert wäre es in diesem Fall, das outputfile in einem anderen Verzeichnis zu erstellen, damit es nicht irrtümlich als inputfile interpretiert wird (wäre bei "gejointe.txt" der Fall).
Zu
und nicht:
Adam Thomas Max ....
hängt von den Ausgangsdateien ab - wenn diese nicht mit einer Zeilenschaltung enden, wird auch die gejointe Datei keine enthalten.

Grüße
bastla
Bitte warten ..
Mitglied: Oli-nux
06.07.2007 um 20:29 Uhr
Danke bastla, probiere ich auch am Wochenende mal aus.

lies dir den text von copy /? durch.
Danke, das half schon weiter.
Zwar etwas umständlicher als evtl. eine Batch aber ok.
Bitte warten ..
Mitglied: Oli-nux
06.07.2007 um 21:02 Uhr
Wenns jetzt noch ein Tool geben würde in das ich die Txt-Dateien welche ich joinen möchte hineinziehen könnte und mir dann auf Knopfdruck eine TXT erstellt werden würde, wäre es noch toller.

Das per "copy" dauert jetzt nämlich auch länger (bei über 700 Dateien).
Bitte warten ..
Mitglied: 13100
06.07.2007 um 21:17 Uhr
einfach mal na so nen tools suchen.
kleiner tip: tools die splitten können, können meistens auch files zusammenführen.
jetz du halt auch mal was.

kann mir eigentlich nich vorstellen, dass der copy befehl probleme mit 700 files hat.
is glaub ich eher ne frage wie man sich anstellt.

ein ähnliches ergebniss bekommt man übrigens mit
type s1.txt >> result.txt
type s2.txt >> result.txt
type s3.txt >> result.txt
Bitte warten ..
Mitglied: bastla
06.07.2007 um 22:25 Uhr
Hallo Oli-nux!

Wie wäre es mit dem Kopieren/Verschieben aller (700) Dateien in einen temporären Ordner (etwa "D:\Sammel") und anschließendem
01.
copy "D:\Sammel\*.*" "D:\joined.txt"
Grüße
bastla
Bitte warten ..
Mitglied: Oli-nux
07.07.2007 um 09:22 Uhr
Hallo Oli-nux!

Wie wäre es mit dem
Kopieren/Verschieben aller (700) Dateien in
einen temporären Ordner (etwa
"D:\Sammel") und
anschließendem
01.
copy "D:\Sammel\*.*" 
02.
> "D:\joined.txt" 
03.
> 
Grüße
bastla
Das wäre nicht gut, denn ich will ja nicht alle 700 Dateien in einer haben sondern nur bestimmte zusammengefasst!
Habe ich oben aber auch geschrieben.
Bitte warten ..
Mitglied: bastla
07.07.2007 um 09:31 Uhr
Hallo Oli-nux!

Ich war davon ausgegangen, dass die 700 eine Teilmenge wären, und alle zusammengefasst werden sollen, was aber nichts am Prinzip ändert:
Zusammenzufassende Dateien in einem Ordner sammeln und alle Dateien dieses Ordners mit dem beschriebenen "copy"-Befehl kombinieren.
Übrigens: Wieviele Dateien sollen maximal zusammengefasst werden? Wenn's eine kleinere Anzahl (bis etwa 50, je nach Pfadlänge) sein sollte, geht's auch mit Drag & Drop, wobei jedoch die Zieldatei bereits im Batch vorgegeben sein muss, also etwa:
01.
@echo off & setlocal 
02.
set "Zusammen=D:\Zusammen.txt" 
03.
if exist "%Zusammen%" del "%Zusammen%" 
04.
:Loop 
05.
if "%~1" neq "" type %1>>"%Zusammen%" & shift & goto :Loop 
06.
pause
Vorgangsweise dann: Dateien markieren, auf die Batchdatei ziehen, nach Bearbeitung aller Dateien (und Tastendruck) fertige Zusammenfassungsdatei ("D:\Zusammen.txt") umbenennen, damit sie beim nächsten Mal nicht überschrieben wird.

Grüße
bastla
Bitte warten ..
Mitglied: Oli-nux
08.07.2007 um 12:24 Uhr
01.
@echo off & setlocal 
02.
> set "Zusammen=D:\Zusammen.txt" 
03.
> if exist "%Zusammen%" del 
04.
> "%Zusammen%" 
05.
> :Loop 
06.
> if "%~1" neq "" type 
07.
> %1>>"%Zusammen%" & shift 
08.
> & goto :Loop 
09.
> pause 
10.
> 
Danke, damit klappts ruckzuck.

Jetzt wäre es noch genial, wenn man das so einstellen (ändern) könnte, dass ich ein Outputfile angeben kann während sich das Dos-Fenster öffnet.

Also quasi so:
Ich markiere meine Txt's, ziehe sie auf die Batchdatei, Dos-Fenster öffnet sich, ich ich gebe die output.txt an (die sich immer ändert) und bestätige per Taste.
Bitte warten ..
Mitglied: 13100
08.07.2007 um 13:54 Uhr
einfach den parameter /p hinter dem set befehl bei der ersten zeile
hinzufügen und den text hinter dem istgelichzeichen anpassen.

set /p "Zusammen=Ausgabe: "
Bitte warten ..
Mitglied: Oli-nux
08.07.2007 um 14:37 Uhr
einfach den parameter /p hinter dem set
befehl bei der ersten zeile
hinzufügen und den text hinter dem
istgelichzeichen anpassen.

set /p "Zusammen=Ausgabe: "
Hmm und wie geht das dann genau, wenn ich nicht möchte dass das erstellte File unter "Eigene Dateien" erstellt wird sondern wo ganz anderes?

Vorher gings ja, wenn ich das aber so anpasse und einen Output-Namen für die Txt vergebe dann landet das File in "Eigene Dateien".
Bitte warten ..
Mitglied: 13100
08.07.2007 um 16:38 Uhr
entwerder kompletten pfad + filename und nich nur filename angeben.
vorher war ja auch d:\zusammen.txt angegeben.

oder alternativ vor jedem %Zusammen% ein d:\ ohne abstand
schreiben, dann reicht bei der angabe der ausgabe nur der dateiname,
wobei dann logischerweise alle ausgaben nach d:\ wandern.
Bitte warten ..
Mitglied: Oli-nux
08.07.2007 um 18:34 Uhr
entwerder kompletten pfad + filename und nich
nur filename angeben.
vorher war ja auch d:\zusammen.txt
angegeben.

oder alternativ vor jedem %Zusammen% ein d:\
ohne abstand
schreiben, dann reicht bei der angabe der
ausgabe nur der dateiname,
wobei dann logischerweise alle ausgaben nach
d:\ wandern.
Ich bin wohl zu doof dafür ich bitte um den ganzen Code.
Bitte warten ..
Mitglied: bastla
08.07.2007 um 19:13 Uhr
Hallo Oli-nux!

Ersetze
01.
set "Zusammen=D:\Zusammen.txt"
durch
01.
set /p Zusammen=Dateiname: 
02.
set "Zusammen=D:\Dein Pfad\%Zusammen%.txt"
dann brauchst Du auch das ".txt" nicht einzugeben ...

Grüße
bastla
Bitte warten ..
Mitglied: Oli-nux
08.07.2007 um 20:11 Uhr
Danke, hat super geklappt.
Jetzt erleichtert mir das schon sehr die Arbeit.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst 2 große TXT Dateien vergleichen und Unterschiede in andere Datei schreiben (6)

Frage von sid.pdm zum Thema Batch & Shell ...

Batch & Shell
gelöst Powershell: Variablen aus .txt Dateien heraus ausgeben (5)

Frage von Tobiased zum Thema Batch & Shell ...

Microsoft Office
gelöst Txt Dateien in Excel importieren (9)

Frage von Serbitar zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Windows Tools
gelöst Aussendienst Datensynchronisierung (12)

Frage von lighningcrow zum Thema Windows Tools ...

Windows Server
Suche passender Treiber (12)

Frage von stolli zum Thema Windows Server ...

Peripheriegeräte
Wlan stört Funkmaus (11)

Frage von Falaffel zum Thema Peripheriegeräte ...

Peripheriegeräte
gelöst USB Festplatte verliert Laufwerksbuchstabe (9)

Frage von cese4321 zum Thema Peripheriegeräte ...