Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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

Text mehrfach in einer Datei ersetzen?

Frage Entwicklung Batch & Shell

Mitglied: LFS1993

LFS1993 (Level 1) - Jetzt verbinden

05.03.2010 um 15:16 Uhr, 4012 Aufrufe, 9 Kommentare

Hallo zusammen!

Über die Suche hab ich auf die Schnelle nix gefunden und hab es relativ eilig damit, ja, ist blöd, is aber leider so!

In einer Datei, die heißt immer gleich, kommt immer wieder der exakt gleiche Begriff vor, dieser steht folgendermassen in der Datei:

|BASSDRUM|

Vor und nach den Pipes sind natürlich noch massiv andere Zeichen, die nicht angerührt werden sollen!

Nun soll da ein Suchen/Ersetzen per BAT drüber, der die BASSDRUM einfach rauslöscht, also nur die beiden Pipes a'la


stehen läßt...

Könnte mir da jemand auf die Schnelle helfen, wär riesig nett von Euch!!!
Mitglied: bastla
05.03.2010 um 16:16 Uhr
Hallo LFS1993!
Über die Suche hab ich auf die Schnelle nix gefunden ...
Da warst Du aber sicher ganz schnell ...

... anyhow:
01.
@echo off & setlocal 
02.
set "Datei=D:\DateiDieImmerGleichHeisst.txt" 
03.
set "Von=|BASSDRUM|" 
04.
set "Nach=||" 
05.
 
06.
set R=%temp%\Replace.vbs 
07.
>%R%  echo F=WScript.Arguments(0):Set fso=CreateObject("Scripting.FileSystemObject"):T=fso.OpenTextFile(F).ReadAll 
08.
>>%R% echo fso.CreateTextFile(F,True).Write Replace(T,"%Von%","%Nach%") 
09.
 
10.
cscript //nologo %R% "%Datei%"
Grüße
bastla
Bitte warten ..
Mitglied: Snowman25
05.03.2010 um 16:58 Uhr
Achte mal auf die Pipes bastla

*korrigier*
01.
@echo off & setlocal 
02.
set "Datei=D:\DateiDieImmerGleichHeisst.txt" 
03.
set "Von=^|BASSDRUM^|" 
04.
set "Nach=^|^|" 
05.
 
06.
set R=%temp%\Replace.vbs 
07.
>%R%  echo F=WScript.Arguments(0):Set fso=CreateObject("Scripting.FileSystemObject"):T=fso.OpenTextFile(F).ReadAll 
08.
>>%R% echo fso.CreateTextFile(F,True).Write Replace(T,"%Von%","%Nach%") 
09.
 
10.
cscript //nologo %R% "%Datei%"
Gruß
Snow
Bitte warten ..
Mitglied: bastla
05.03.2010 um 17:41 Uhr
@Snowman25

Achte mal auf die Anführungszeichen - Korrektur nicht nötig (bzw genauer: kontraproduktiv) ...

Grüße
bastla
Bitte warten ..
Mitglied: Snowman25
05.03.2010 um 20:26 Uhr
@bastla,

>set "Von=|BASSDRUM|" 
 
>echo %Von% 
Syntaxfehler. 
 
>
Bitte warten ..
Mitglied: bastla
05.03.2010 um 20:46 Uhr
@Snowman25
>set "Von=|BASSDRUM|"  
 
>echo "%Von%" 
"|BASSDRUM|"
Getestet hast Du aber weder meinen Vorschlag von oben, noch die von dir korrigierte Variante - oder?

Grüße
bastla
Bitte warten ..
Mitglied: LFS1993
06.03.2010 um 09:44 Uhr
Hallo und vielen Dank schonmal!

So schnell hatte ich nicht gesucht, hab aber wirklich nix passendes gefunden, wohl überlesen oder ignoriert, tut mir leid...

Ich teste das dann gleich mal und geb Bescheid ob alles so klappt, mal sehen welche Variante paßt!

HERZLICHEN DANK FÜR ALLES!!!

P.S.: So, eben getestet, bastlas Version arbeitet wunderbar, nochmals danke und ein schönes Wochenende!!!!!
Bitte warten ..
Mitglied: LFS1993
16.07.2010 um 10:04 Uhr
Hello again!

Nun hab ich mit dem wunderbar funktionierenden Script ne ganze Weile meine Freude gehabt und steh nun vor dem nächsten Problem...

In der Datei, die geprüft wird, hat sich teilweise was geändert, leider!

Die |BASSDRUM| wird jetzt teilweise als |"BASSDRUM"| angegeben, wodurch das Script nicht mehr funktioniert, eben wegen den Hochkommas.

Kommt man da irgendwie drum rum, oder muß was komplett neues her?!?

Hilfe wäre wirklich super, ich danke schon mal im Voraus!
Bitte warten ..
Mitglied: bastla
16.07.2010 um 12:05 Uhr
Hallo LFS1993!

Versuch es damit:
01.
@echo off & setlocal 
02.
set "Datei=D:\DateiDieImmerGleichHeisst.txt" 
03.
 
04.
set "Von1=|""BASSDRUM""|" 
05.
set "Nach1=||" 
06.
set "Von2=|BASSDRUM|" 
07.
set "Nach2=||" 
08.
 
09.
set R=%temp%\Replace.vbs 
10.
>%R%  echo F=WScript.Arguments(0):Set fso=CreateObject("Scripting.FileSystemObject"):T=fso.OpenTextFile(F).ReadAll 
11.
>>%R% echo T=Replace(T,"%Von1%","%Nach1%"):fso.CreateTextFile(F,True).Write Replace(T,"%Von2%","%Nach2%") 
12.
 
13.
cscript //nologo %R% "%Datei%"
Bitte beachten: Zu suchende Anführungszeichen müssen verdoppelt eingegeben werden (siehe Zeile 4) ...
Es wäre aber vermutlich sinnvoller, bei der Entstehung der Datei anzusetzen und gleich dort die erforderlichen Anpassungen vorzunehmen ...

Grüße
bastla
Bitte warten ..
Mitglied: LFS1993
16.07.2010 um 12:22 Uhr
Hi bastla!

Damit hast Du mir wieder mal sehr aus der Patsche geholfen!
Ja, wenn man das mit den verdoppelten "Anführungszeichen" weiß, wird einem alles klar!!!

Vielen herzlichen Dank!!!!!!!!!!!!!!!!!
Bitte warten ..
Ähnliche Inhalte
Windows 10
gelöst Werden Dateien beim Ersetzen wirklich überschrieben? (3)

Frage von Nexder zum Thema Windows 10 ...

Batch & Shell
gelöst Text Datei bestimmte Bereiche lesen und in neue Text schreiben (3)

Frage von TurboD zum Thema Batch & Shell ...

Outlook & Mail
Outlook Erinnerung mehrfach

Frage von Caro90 zum Thema Outlook & Mail ...

Neue Wissensbeiträge
Mac OS X

Apple hat macOS High Sierra veröffentlicht

(3)

Information von Frank zum Thema Mac OS X ...

Viren und Trojaner

Ransomware or Wiper? RedBoot Encrypts Files but also Modifies Partition Table

(4)

Information von BassFishFox zum Thema Viren und Trojaner ...

Notebook & Zubehör

WOL bei HP Notebooks

(7)

Erfahrungsbericht von Henere zum Thema Notebook & Zubehör ...

Heiß diskutierte Inhalte
Windows 10
gelöst Netzwerkkarte schaltet sich erst nach dem Logon ein (24)

Frage von DerWoWusste zum Thema Windows 10 ...

Windows Server
Seit IP Umstellung DC DNS Fehler (23)

Frage von Yaimael zum Thema Windows Server ...

Grafik
gelöst CAD Arbeitsplätze (17)

Frage von Diddi93 zum Thema Grafik ...

Weiterbildung
gelöst Fest angestellter Admin oder Systemhaus Admin mit Kundenbetreuung? (16)

Frage von Voiper zum Thema Weiterbildung ...