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

Schleife und suchen ersetzen

Mitglied: SBiesterfeldt

SBiesterfeldt (Level 1) - Jetzt verbinden

13.04.2010 um 11:25 Uhr, 3453 Aufrufe, 4 Kommentare

Ich habe einen Code, möchte jedoch in mehreren Dateien nacheinander suchen&ersetzen

Hallo,

ich habe den folgenden Code:

01.
@echo off & setlocal enabledelayedexpansion
02.
title NVP Design
03.
cls
04.
color 1f
05.

06.
set coredrive="D:\Sascha\portal.war\core"
07.
set classicdrive="D:\Sascha\portal.war\defaultStyleFamily\classic"
08.
set litedrive="D:\Sascha\portal.war\defaultStyleFamily\lite"
09.
set rootdrive="D:\Sascha\portal.war"
10.

11.
set Datei1=%coredrive%\sideMenu.css
12.
set Datei2=%coredrive%\sideMenu.jsp
13.
set Datei3=%classicdrive%\portalMyPage.css
es sind ca. 50 Dateien, alternativ wären es nur *.css und *.jsp und *.txt Dateien

01.
rem ########################################################################################################################################
02.
:start
03.

04.
	title NVP Design
05.
	cls
06.
	echo.
07.
	echo.
08.
	echo                  =============== NVP Design ================
09.
	echo                  *                                         *
10.
	echo                  *  1 - DUNKEL                             *
11.
	echo                  *  2 - HELL                               *
12.
	echo                  *  3 - HINTERGRUND                        *
13.
	echo                  *  4 - Companyname change                 *
14.
	echo                  *  5 - About SQLMenu ^& Disclaimers        *
15.
	echo                  *  x - Exit                               *
16.
	echo                  *                                         *
17.
	echo                  ===========================================
18.
	echo                         Ctrl+C at any time will abort
19.
	echo.
20.
	echo.
21.
	echo                     Select the type of SQL command to run
22.
	echo.
23.
	set /p sqltype=                            Your selection: 
24.

25.
	if '%sqltype%'=='1' goto DUNKEL
26.
	if '%sqltype%'=='2' goto HELL
27.
	if '%sqltype%'=='3' goto HINTERGRUND
28.
	if '%sqltype%'=='4' goto COMPANY
29.
	if '%sqltype%'=='5' goto ABOUT
30.
	if '%sqltype%'=='x' exit
31.
	if '%sqltype%'=='X' exit
32.

33.
	
34.
	rem (else)
35.
	echo.
36.
	echo                              ---INVALID ENTRY---
37.
	echo.
38.
	pause
39.
	goto start
Hier beginnt der erste Suchen teil der aber auf alle Dateien bzw. Dateitypen gehen soll.

01.
rem ########################################################################################################################################
02.
:DUNKEL 
03.

04.
set /p NewColor= Neue Farbe in HEX (ohne #):
05.

06.
set "Datei1=%Datei1%"
07.
set "t=Temp.tmp"  
08.

09.
set "Suchen1=00285C" 
10.
set "Ersetzen1=%NewColor%" 
11.
 
12.
if exist "%t%" del "%t%" 
13.
for /f "delims=" %%i in ('findstr /n $ "%Datei1%"') do set "Line=%%i" & call :ProcessLine 
14.
move "%t%" "%Datei1%" 
15.
goto :done 
16.
 
17.
:ProcessLine 
18.
for /f "tokens=1* delims=:" %%a in ("%Line%") do set "L=%%b" 
19.
if not defined L >>"%t%" echo\& goto :eof 
20.
set WriteLine=!L:%Suchen1%=%Ersetzen1%!
21.
>>"%t%" echo !WriteLine! 
22.
goto :eof  
23.
Hier ist nur noch das Ende verarbeitet.
01.
rem ########################################################################################################################################
02.
:done
03.

04.
	echo.
05.
	echo.
06.
	echo.
07.
	echo  ====================================================================== 
08.
	echo.
09.
	echo   Thank you for using SQLMenu.  The selected task has been completed. 
10.
	echo.
11.
	echo              M - Main Menu (SQLMenu Begin Screen) 
12.
	echo              X - Exit. 
13.
	echo.
14.
	echo  ====================================================================== 
15.
	echo. 
16.
	echo.
17.
	set /p getputagain=                              Your selection: 
18.

19.
	if '%getputagain%'=='m' goto start
20.
	if '%getputagain%'=='M' goto start
21.
	if '%getputagain%'=='x' exit
22.
	if '%getputagain%'=='X' exit
23.

24.
	rem (else)
25.
	echo.
26.
	echo                              ---INVALID ENTRY---
27.
	echo.
28.
	pause
29.
Kann mir jemand helfen hier eine Schleife zu entwickeln die auf die Dateien bzw. die Typen die Definiert sind suchen und ersetzen?

Vielen Dank im Voraus
cls
goto done
Mitglied: LotPings
13.04.2010 um 12:08 Uhr
Hallo SBiesterfeldt,

ohne deine Vorgeschichte zu kennen ist deine Fragestellung viel zu lang und zu unklar um dir überhaupt helfen zu können/wollen.

Mir ist nicht klar womit du ein Problem hast.

Gruß
LotPings
Bitte warten ..
Mitglied: SBiesterfeldt
13.04.2010 um 12:11 Uhr
Hallo LotPings,

ich möchte in mehreren Dateien (*.txt, *.css und *jsp) nach bestimmten begriffen suchen und diese mit einem Benutzerdefinierten Wert ersetzen.

Beispiel
Suchen1=00285C
Ersetzen1=%NewColor%

Suchen2=155527
Ersetzen3=%NewColor2%

usw.

Sorry, dachte je mehr Infos umso besser....

Gruß Sascha
Bitte warten ..
Mitglied: LotPings
13.04.2010 um 15:25 Uhr
Hallo Sascha,

purer Batch-Code ist zum suchen inbesondere in HTML-Dateien schlecht geeignet, da die dort häufig vorkommenden Sonderzeichen <>& einer besonderen Behadlung bedürfen um nicht als Batch-Anweisungen für E/A-Umleitng bzw Befehlsverkettung interpretiert zu werden.

Wenn die Dateien außerdem noch anders kodiert sind (UTF_8) wirds ganz holperig. Mit CSS kannst du doch sowieso Farb eigensschaften abstrahieren.

Wenn das häufig vorkommt machst du etwas falsch; für gelegentliche Änderungen würd ich einen Editor einsetzen der Suchen Ersetzen über mehrere Dateien beherscht. AFAIK kann das z.Bsp. Notepad++.

Gruß
Lotpings
Bitte warten ..
Mitglied: SBiesterfeldt
13.04.2010 um 15:32 Uhr
ja aber die Änderungen sollen in insgesamt 50 Dateien gemacht werden, und die Funktion via Editor ist etwas kompliziert.

Wie würde denn eine Lösung für TXT dateien aussehen?
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Excel Such- und Vergleichsfunktion
gelöst Frage von oesi1989Microsoft Office15 Kommentare

Hallo zusammen, ich habe 2 Tabellen mit Name, Vorname und Arbeitgeber. 1. Tabelle Name Vorname Geb-Datum Arbeitgeber Straße Ort ...

Exchange Server
Such-Index nach Neuerstellung defekt
Frage von CoverianExchange Server

Guten Morgen zusammen, wir haben hier aktuell ein Problem das mir schlaflose Nächte bereitet. Es handelt sich um einen ...

Batch & Shell
Wlan-adapter such algorithmus in batch
gelöst Frage von TicoWriteBatch & Shell7 Kommentare

Hallo zusammen, Ich möchte einen Wlan-adpater such algorithmus in batch erstellen, dazu fehlt mir aber der befehl in Dos. ...

Exchange Server

Exchange-Fehler: 550 No such recipient here

gelöst Frage von GreysonExchange Server3 Kommentare

Hallo administrator.de, habe seit heute an meinem Exchange die Fehlermeldung: #550 No such recipient here Diese Meldung erhalte ich ...

Neue Wissensbeiträge
Outlook & Mail

Outlook 2016 stürzt ab, wenn man ein (at)- Zeichen im Text einer neuen E-Mail schreibt

Tipp von Enriqe vor 53 MinutenOutlook & Mail

Bei uns in der Firma häuften sich die Fälle, bei denen sich Outlook kommentarlos verabschiedet, wenn man ein - ...

Google Android

Google sperrt Android-Updates und den Play Store für Huawei

Information von Deepsys vor 1 TagGoogle Android8 Kommentare

Das finde ich schon ein starkes Stück, Trump der Welt Diktator. So kann man mit einem Dekret mal eben ...

Windows 7

Südkoreas Regierung setzt auf Linux, um Windows 7 Clients abzulösen

Information von kgborn vor 1 TagWindows 74 Kommentare

Kleiner Infosplitter zum Wochenanfang: Während München (LiMux) und die niedersächsische Finanzverwaltung von Linux auf einen Windows 10-Client (und Office) ...

Internet
Big Brother is Watching You
Information von transocean vor 1 TagInternet1 Kommentar

Moin, die Datenkrake Google fischt Informationen über Einkäufe ab, die GMail Nutzer im Netz tätigen. Gruß Uwe

Heiß diskutierte Inhalte
Windows 10
Windows am MAC
Frage von LeeX01Windows 1016 Kommentare

Guten Abend zusammen, ich habe gerade ein Macbook Pro vor mir welches ich mit einem Windows 10 to go ...

Humor (lol)
Mitarbeiter meldet: VPN funktioniert nicht
gelöst Frage von Epixc0reHumor (lol)13 Kommentare

Servus, einer unserer Mitarbeiter meldete heute, sein VPN funktioniert Zuhause nicht, im LTE Netz aber schon. Per Teamviewer hin ...

Linux Userverwaltung
Ist sudo auf Servern Pflicht?
gelöst Frage von lcer00Linux Userverwaltung13 Kommentare

Hallo zusammen, wir haben für einige Netzwerkdienste einige Debian Server. Auf diesen Servern arbeiten keine Benutzer im eigentlichen sinne. ...

Batch & Shell
Powershell Datum der zuletzt eingespielten Patche bei remote Servern ermitteln
Frage von bensonhedgesBatch & Shell13 Kommentare

Hallo, ich möchte gerne anhand einer Serverliste (bsp. computers.txt) via PS ermitteln, wann derjeweilige Server zuletzt gepatcht wurde (Liste ...