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

per batch text aus datei ab einem best. zeichen in andere datei kopieren

Frage Entwicklung Batch & Shell

Mitglied: icram

icram (Level 1) - Jetzt verbinden

07.08.2008, aktualisiert 13:16 Uhr, 6447 Aufrufe, 6 Kommentare

hallo,

ich möchte aus mehreren txt-Dateien ab einem bestimmten Text (nämlich <!!!><???>) den nachfolgenden Text in eine neue
Datei kopieren.
also so:
suche in Datei 1 nach dem Begriff <!!!><???> und schreibe alle Zeichen danach in die Datei gesamt-neu.txt.
suche in Datei 2 nach dem Begriff <!!!><???> und schreibe alle Zeichen danach in die Datei gesamt-neu.txt.
suche in Datei 3 nach dem Begriff <!!!><???> und schreibe alle Zeichen danach in die Datei gesamt-neu.txt.

kann mir da jemand helfen? von batch-befehlen hab ich nicht so viel Ahnung. (ich kenne nur mkdir, copy, ren und so Standardsachen..)

viele Grüße

marc
Mitglied: bastla
07.08.2008 um 10:56 Uhr
Hallo icram!

Zur Not ginge es auch mit Batch alleine, aber besser geeignet für Textoperationen ist VBScript - daher eine Kombination:
01.
@echo off & setlocal 
02.
set "Neu=D:\gesamt-neu.txt" 
03.
set "Quelle=D:\Datei*.txt" 
04.
 
05.
if exist "%Neu%" del "%Neu%" 
06.
set E=%temp%\Extract.vbs 
07.
> %E% echo S="<!!!><???>":T=CreateObject("Scripting.FileSystemObject").OpenTextFile(WScript.Arguments(0)).ReadAll:P=InStr(T,S):If P^>0 Then WScript.Echo Mid(T,P+Len(S)) 
08.
 
09.
for %%i in ("%Quelle%") do cscript //nologo %E% "%%i">>"%Neu%"
Dieser Batch erzeugt ein VBScript und "füttert" es der Reihe nach mit den Dateien, welche als %Quelle% festgelegt wurden. Das Script liefert jeweils den von Dir gewünschten Ausschnitt aus der Datei als Ergebnis zurück, welches dann an die Datei %Neu% angefügt wird.

Grüße
bastla
Bitte warten ..
Mitglied: icram
07.08.2008 um 11:26 Uhr
hallo bastla

SUUUPER!!! DAnke! genau so funktionierts! Vielen Dank!

noch ein kleiner Schönheitsfehler: wenn in der Ursprungsdatei ein ß,ö,ä oder ü
steht, erscheint das in der neuen Textdatei als á oder " oder so. wie kann ich das noch ändern?

viele Grüße
marc

ps: ich hab einige deiner Beiträge "gebookmarkt", u.a. hat mir dieser hier
schon sehr oft geholfen

http://www.administrator.de/.csv_Dateien_Zusammenkopieren_und_bestimmte ...
Bitte warten ..
Mitglied: bastla
07.08.2008 um 11:41 Uhr
Hallo icram!

Dann kleiner Strategiewechsel - das VBScript übernimmt auch gleich das Schreiben:
01.
@echo off & setlocal 
02.
set "Neu=D:\gesamt-neu.txt" 
03.
set "Quelle=D:\Datei*.txt" 
04.
 
05.
if exist "%Neu%" del "%Neu%" 
06.
set E=%temp%\Extract.vbs 
07.
> %E% echo S="<!!!><???>":Set fso=CreateObject("Scripting.FileSystemObject"):T=fso.OpenTextFile(WScript.Arguments(0)).ReadAll 
08.
>>%E% echo P=InStr(T,S):If P^>0 Then fso.OpenTextFile(WScript.Arguments(1),8,1).Write Mid(T,P+Len(S)) 
09.
 
10.
for %%i in ("%Quelle%") do cscript //nologo %E% "%%i" "%Neu%"
Grüße
bastla

P.S.: Freut mich immer, wenn's hilft ...

[Edit] Dem "OpenTextFile" noch ",1" hinzugefügt. [/Edit]
Bitte warten ..
Mitglied: icram
07.08.2008 um 12:06 Uhr
hm, jetzt erscheint folgende fehlermeldung

C:\Users\marc\AppData\Local\Temp\Extract.vbs(2, 26) Laufzeitfehler in Microsoft VBScript: Die Datei wurde nicht gefunden.

ich hab vista, muss da noch irgendwas installiert werden?
Bitte warten ..
Mitglied: bastla
07.08.2008 um 12:23 Uhr
Hallo icram!

Sorry - hatte vergessen, in Zeile 8 dem "OpenTextFile" noch ein ",1" hinzuzufügen - ist inzwischen auch oben korrigiert.

Grüße
bastla
Bitte warten ..
Mitglied: icram
07.08.2008 um 13:16 Uhr
Vielen Dank! Funktioniert Prima!

marc
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
gelöst Ordner per Batch verschieben, Datei kopieren (2)

Frage von Shape.Shifter zum Thema Batch & Shell ...

Batch & Shell
gelöst Per Batch nur neueste Datei mit bestimmten Dateianfang kopieren (3)

Frage von Peter32 zum Thema Batch & Shell ...

Batch & Shell
Batch: Word Datei kopieren und umbennen (9)

Frage von ExcelNoob177 zum Thema Batch & Shell ...

Batch & Shell
gelöst For Schleife für Abgleich mit Text-Datei und Unterverzeichnisse (4)

Frage von grisur zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
DSL, VDSL
gelöst DSL 200m verlängern (15)

Frage von Angela44 zum Thema DSL, VDSL ...

LAN, WAN, Wireless
Per Script auf UniFi-controller zugreifen und WPA2-Key ändern (11)

Frage von Winfried-HH zum Thema LAN, WAN, Wireless ...

Windows Server
SBS 2011 Standard virtualisieren (11)

Frage von HeinrichM zum Thema Windows Server ...

Exchange Server
gelöst DHCP Sever MS Server 2012 Problem (10)

Frage von Florian86 zum Thema Exchange Server ...