Dateien zusammenführen (DOS "type") als Plugin?

German support forum

Moderators: Hacker, Stefan2, white

Post Reply
User avatar
Peter
Power Member
Power Member
Posts: 2068
Joined: 2003-11-13, 13:40 UTC
Location: Schweiz

Dateien zusammenführen (DOS "type") als Plugin?

Post by *Peter »

Ich muss immer wieder sehr viele Textdateien zu einer zusammenführen. Derzeit mache ich das per DOS-Befehl

Code: Select all

type *.txt > txt.all
(wobei man da noch über die Erweiterung stolpern kann...)

Geht das irgendwie praktischer mit einem Plugin?

Peter
TC 10.xx / #266191
Win 10 x64
User avatar
Dalai
Power Member
Power Member
Posts: 10003
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Post by *Dalai »

Das kann man über ein Skript machen.

Code: Select all

@echo off
set ziel=txt.all

for %%i in (%1) do type "%%~i" >> "%ziel%"
Das in ein CMD-Skript gespeichert, auf einen Button (inkl. Parameter %L oder %P%S, da musst du rumprobieren) gelegt, kann das schon funktionieren: Dateien markieren, Button drücken und freuen ;).

MfG Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
User avatar
Peter
Power Member
Power Member
Posts: 2068
Joined: 2003-11-13, 13:40 UTC
Location: Schweiz

Post by *Peter »

Danke für die schnelle Lösung.

Bleibt nur noch der Wunsch, das Ziel (bei mir beispielhaft mit "txt.all" angegeben) intelligenter zu gestalten:
- gleiche Erweiterung wie die Ausgangsdateien möglich (das ist beim normalen "type" nicht möglich)
(- Luxus: automatische Erweiterungserkennung ..)

Peter
TC 10.xx / #266191
Win 10 x64
User avatar
Dalai
Power Member
Power Member
Posts: 10003
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Post by *Dalai »

Peter wrote:(das ist beim normalen "type" nicht möglich)
Was meinst du damit?

Und eine automatische "Erkennung" kann man natürlich einbauen, man muss nur die Syntax ausschöpfen:

Code: Select all

%%~xi
würde z.B. die Extension jeder einzelnen Datei ergeben, nur nutzt das in dem Fall der Markierung unterschiedlicher Typen nichts... Da müsste man entweder noch mehr Arbeit reinstecken oder gleich ein AutoIt-Skript schreiben, dann mit FileRead() & Co.

MfG Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
User avatar
ZoSTeR
Power Member
Power Member
Posts: 1052
Joined: 2004-07-29, 11:00 UTC

Post by *ZoSTeR »

Ich denke so ergibt sich das gewünschte Ergebnis:

Code: Select all

rem @echo off
set ziel=All

for /F %%i in (%1) do type "%%~i" >> "%ziel%%%~xi"
mit Parameter %L

Datei1.txt
Datei2.txt
landen in All.txt

Datei3.doc
Datei4.doc
landen in All.doc
User avatar
Dalai
Power Member
Power Member
Posts: 10003
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Post by *Dalai »

Im Prinzip hast du Recht, aber Dateien mit unterschiedlicher Erweiterung landen in unterschiedlichen Dateien, das ist genau das Problem, was ich vorhin meinte.

MfG Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
User avatar
Peter
Power Member
Power Member
Posts: 2068
Joined: 2003-11-13, 13:40 UTC
Location: Schweiz

Post by *Peter »

Dalai wrote:
Peter wrote:(das ist beim normalen "type" nicht möglich)
Was meinst du damit?
Ich mein(t)e das:
- Ausgangslage: 1.txt, 2.txt, 3.txt
- Befehl: type *.txt > alles.txt
- Problem (von mir mal beobachtet): 1, 2 und 3 werden in "alles" verschoben, und dann wird wegen "*" auch noch das frische "alles.txt" gefunden - und nochmals in sich selbst geschrieben.
ZoSTeR wrote:Ich denke so ergibt sich das gewünschte Ergebnis:
...Datei1.txt
Datei2.txt
landen in All.txt

Datei3.doc
Datei4.doc
landen in All.doc
Besten Dank.
Dalai wrote:Im Prinzip hast du Recht, aber Dateien mit unterschiedlicher Erweiterung landen in unterschiedlichen Dateien, das ist genau das Problem, was ich vorhin meinte....
In meinem Fall ist das nicht das Problem, sondern der Wunsch.

Danke nochmals

Peter
TC 10.xx / #266191
Win 10 x64
User avatar
Peter
Power Member
Power Member
Posts: 2068
Joined: 2003-11-13, 13:40 UTC
Location: Schweiz

Post by *Peter »

Nachtrag für die Verwirrten wie mich:

Im Startbefehl des TC wirkt der "Startpfad" als Zielpfad der erstellten Datei. Wenn man ihn leer lässt, wird die Zieldatei im gleichen Verzeichnis wie die Quelldateien erstellt.

Peter
TC 10.xx / #266191
Win 10 x64
Post Reply