Top-Themen

Aktuelle Themen (A bis Z)

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 Klammern und Inhalt der Klammern aus einem Text entfernen per Batch

Mitglied: Thomas0204

Thomas0204 (Level 1) - Jetzt verbinden

22.10.2011 um 10:55 Uhr, 4621 Aufrufe, 3 Kommentare

Hey,
ich habe mal wieder ein Problem und zwar habe ich diesmal eine Text Datei wo die Klammern +Inahlt entfernt werden sollen.
Die Klammern bekommen ich entfern aber ich weiß nicht wie ich dazu noch den Inhalt entfernt bekomme.
Also die Texte Datei sieht ungefähr so aus:

Error (Fehlercode 5825) Probleme mit...
Fail [error 458d4] user...
Fail [error 458d4 drtd] user...

Nacher möchte ch alt nur noch so eine Textdatei haben:

Error Probleme mit...
Fail user...

Ich hoffe ihr könnt mir helfen
LG Thomas0204
Mitglied: Skyemugen
22.10.2011 um 11:49 Uhr
Aloha,

leider habe ich momentan nicht wirklich Zeit, daher nur ein halboptimaler Vorschlag von mir jetzt:
01.
for /f "usebackq tokens=1,2,* delims=()[]" %%s in ("E:\Skripte\datei.log") do >>"E:\Skripte\Ausgabe.txt" echo %%s%%u
in der Annahme, dass ()[] auch nur in den Fehlercodes vorkommen ...

halboptimal deshalb, weil du jetzt zwei Leerzeichen bekommst Error Probleme mit ...

... aber vielleicht schaffst du es ja, es selbst noch zum Optimalen hinzubauen (mit einem Unterprogramm)

greetz André
Bitte warten ..
Mitglied: Friemler
22.10.2011 um 11:54 Uhr
Hallo Thomas0204,

ich rate zu einem VBScript. Das Bearbeiten von Dateien mit beliebigem Inhalt gehört nicht zu den Stärken von Batchscript. Es gibt einige Zeichen, die den Batchinterpreter bei der Verarbeitung durcheinander bringen.

Teste mal das hier:
01.
'Ein- und Ausgabedatei hier eintragen
02.
strInFile   = "Test.txt"
03.
strOutFile  = "Test neu.txt"
04.

05.
'Alle Arten von Klammern
06.
arrBrackets = Array("()", "[]", "{}", "<>")
07.

08.

09.
Const ForReading = 1
10.

11.
'Das Klammer-Array tauglich machen
12.
'als Suchmuster für Reguläre Ausdrücke.
13.
'.* steht für alle Zeichen, die zwischen
14.
'den Klammern stehen, die Klammern
15.
'müssen mit \ escaped werden, da sie
16.
'zur Syntax von Regulären Ausdrücken gehören.
17.
' {0,1} bewirkt, dass zusätzlich zu der zu
18.
'löschenden Klammer auch noch EIN
19.
'nachfolgendes Leerzeichen gelöscht wird,
20.
'wenn es denn vorhanden ist.
21.
For I = 0 To UBound(arrBrackets)
22.
  arrBrackets(I) = Replace(arrBrackets(I), "()", "\(.*\) {0,1}")
23.
  arrBrackets(I) = Replace(arrBrackets(I), "[]", "\[.*\] {0,1}")
24.
  arrBrackets(I) = Replace(arrBrackets(I), "{}", "\{.*\} {0,1}")
25.
  arrBrackets(I) = Replace(arrBrackets(I), "<>", "<.*> {0,1}")
26.
Next
27.

28.
'Dateisystemobjekt erzeugen
29.
Set objFSO = CreateObject("Scripting.FileSystemObject")
30.

31.
'Eingabedatei öffnen, auslesen und wieder schließen
32.
Set objInFile = objFSO.OpenTextFile(strInFile, ForReading, False)
33.
strContent    = objInFile.ReadAll
34.
objInFile.Close
35.

36.
'Objekt für Reguläre Ausdrücke erzeugen und einstellen,
37.
'dass alle Fundstellen berücksichtigt werden sollen
38.
Set objRegExp    = New RegExp
39.
objRegExp.Global = True
40.

41.
'Alle Klammerarten suchen und ersetzen
42.
For Each strBrackets In arrBrackets
43.
  objRegExp.Pattern = strBrackets
44.
  strContent = objRegExp.Replace(strContent, "")
45.
Next
46.

47.
'Ausgabedatei öffnen und
48.
'den veränderten Dateiinhalt in neue Datei schreiben
49.
'Ausgabedatei schließen
50.
Set objOutFile = objFSO.CreateTextFile(strOutFile, True)
51.
objOutFile.Write strContent
52.
objOutFile.Close
Zeile 2 und 3 musst Du anpassen, den Code als VBS-Datei speichern und das Script dann folgendermaßen starten:
cscript /nologo "PfadUndNameDesScripts.vbs"
Gruß
Friemler
Bitte warten ..
Mitglied: Thomas0204
22.10.2011 um 12:17 Uhr
@Skyemugen
Deine lösung war völlig ausreichend Danke
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Text-Datei auslesen und Inhalt als Parameter übergeben

Frage von aubm2013Batch & Shell1 Kommentar

Hallo zusammen, ich möchte eine Text-Datei auslesen und die Werte an ein Makro innerhalb des Batch-Skriptes übergeben. Die auszulesende ...

Batch & Shell

Txt Inhalt in batch variabel verwenden

gelöst Frage von quan81Batch & Shell17 Kommentare

Liebes Forum ich bin neu dabei und freu mich wenn mir jemand helfen kann. Ich versuche per .bat file ...

Batch & Shell

Mit Einer Batch Datei Text Bearbeiten

gelöst Frage von ronny30021Batch & Shell2 Kommentare

Guten Tag miteinader Ich habe folgendes Problem: Ich würde gerne mit einer Batch-Datei eine Text-Datei durchsuchen, Das gesuchte wort ...

Outlook & Mail

EMails werden nach 3 Monaten entfern - Einstellung

Frage von staybbOutlook & Mail5 Kommentare

Hallo, ich habe bei einem Postfach das Problem, dass in Outlook alle Mails älter wie 3 Jahre verscheinden und ...

Neue Wissensbeiträge
Windows Server

Zähe Update-Installation auf Windows Server 2016

Information von kgborn vor 1 TagWindows Server4 Kommentare

Mir sind in der Vergangenheit immer wieder Beschwerden von Admins unter die Augen gekommen, die sich über die doch ...

Humor (lol)
Turnschuhe per Firmware lahmlegen
Information von Henere vor 1 TagHumor (lol)6 Kommentare

Und was kommt demnächst ? Bekomme ich kein Klopapier mehr, weil der Spender einem DDOS unterliegt ? :-) Ich ...

Sicherheit

Sicherheitsrisiko in WinRAR und Co. durch Schwachstelle in UNACEV2.DLL

Information von kgborn vor 1 TagSicherheit

In der seit 2005 nicht mehr aktualisierten Bibliothek UNACEV2.DLL gibt es eine Path-Traversal-Schwachstelle. Diese ermöglicht es, bei ACE-Archiven Dateien ...

Internet

CDU Propaganda: Urheberschutz im Internet - Ende des digitalen Wild-West

Information von Frank vor 2 TagenInternet6 Kommentare

Hallo Administratoren, aus einem Kommentar heraus habe ich folgenden Beiträge von Herr Sven Schulze und Axel Voss (beide CDU ...

Heiß diskutierte Inhalte
Hardware
Frage an Kenner von 5,25 Zoll Laufwerken
Frage von DerWoWussteHardware54 Kommentare

Moin Kollegen. Hier wird gerade im Archiv gewühlt und 5,25 Zoll Disketten ("2S/HD", 96TPI) sollen eingelesen werden. Ich habe ...

Windows Tools
Dateiname Automatisch auf PDF Klartext oder als Barcode abdrucken
Frage von spongebob24Windows Tools29 Kommentare

Hallo Zusammen, habe eine tolle Anforderung bekommen. Ich sollte auf mehrere PDF Dateien Automatisch einen Stempel anbringen lassen. Toll ...

Internet
SDSL oder ADSL - Preis-Leistungs-Verhältnis
Frage von ZeppelinInternet22 Kommentare

Wehrte Community, der Unterschied dieser beiden Techniken ist recht einfach erklärt. Das S, steht für Synchron (Gleich) und das ...

Microsoft Office
MicroSoft und seine Lizenzen
Frage von ZeppelinMicrosoft Office19 Kommentare

Wehrte Community, ich wende mich an die Community weil MicroSoft dazu keine Stellung nehmen möchte. Ich öffne mein Web-Browser ...