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 Batch Datei durchsuchen und nach String eine zusätzliche Zeile einfügen

Mitglied: Borob14

Borob14 (Level 1) - Jetzt verbinden

21.10.2014, aktualisiert 23.10.2014, 1123 Aufrufe, 5 Kommentare

Hi zusammen habe schon einiges in der Richtung in diesen und anderen Foren durchgelesen, verstehe den Syntax aber nicht ganz.

mein derzeitiger Code:

01.
@echo off & setlocal  
02.
set "Zusatz=ShowCCWatchAndPrintButton=true"  
03.
set "Nach=ShowAllCCWatchInfos"  
04.
set "Datei=c:\bat\cadcom\cc_run.ini"  
05.
set "DateiTmp=%temp%\Textfile.tmp"  
06.
 
07.
move "%Datei%" "%DateiTmp%"  
08.
for /f "delims=" %%i in (%DateiTmp%) do (  
09.
    >>"%Datei%" echo %%i  
10.
    echo %%i|findstr /b "%Nach%">nul && >>"%Datei%" echo %Zusatz%  
11.
)
der macht seine Arbeit ganz gut, nur kopiert er leider nicht alles in die "neue Datei"
Es Fehlen leere Zeilen und Kommentare aus der alten Datei.

Die Kommentare fangen alle mit ; an und beinhalten teilweise nur Wörter teilweise aber auch - _ ( ) | \ / . ! ,
Ich benötige leider eine 1 zu 1 Kopie der alten Datei nur das eine Zeile halt hinzugefügt werden muss. Die Konfig Dateien unterscheiden sich von Client zu Client leider.

Wie muss man das in die obige Batch mit einbauen damit er diese Zeichen nicht falsch interpretiert?

danke

Mit freundlichen Grüßen Rob
Mitglied: 114757
21.10.2014, aktualisiert um 13:52 Uhr
Hallo Rob,
ich mach sowas mit der Powershell:
01.
$suche = 'ShowAllCCWatchInfos' 
02.
$ersatz = 'ShowCCWatchAndPrintButton=true' 
03.
$file = 'c:\bat\cadcom\cc_run.ini' 
04.
(gc $file) -replace "^($([regex]::Escape($suche)).*)",('$1' + "`r`n$ersatz") | Set-Content $file -Force
Gruß
jodel32
Bitte warten ..
Mitglied: rubberman
LÖSUNG 21.10.2014, aktualisiert 23.10.2014
Hallo Borob14,

ungetestet etwa so:
01.
@echo off &setlocal  
02.
set "Zusatz=ShowCCWatchAndPrintButton=true"  
03.
set "Nach=ShowAllCCWatchInfos"  
04.
set "Datei=c:\bat\cadcom\cc_run.ini"  
05.
set "DateiTmp=%temp%\Textfile.tmp"  
06.
 
07.
setlocal EnableDelayedExpansion 
08.
<"!Datei!" >"!DateiTmp!" ( 
09.
  for /f %%i in ('type "!Datei!"^|find /c /v ""') do for /l %%j in (1 1 %%i) do ( 
10.
    set "line=" &set /p "line=" 
11.
    if not defined line ( 
12.
      echo( 
13.
    ) else for /f "delims=" %%k in ("!nach!") do if "!line!"=="!line:%%k=!" ( 
14.
      echo(!line! 
15.
    ) else ( 
16.
      echo(!line! 
17.
      echo(!Zusatz! 
18.
19.
20.
21.
move "!DateiTmp!" "!Datei!"
Grüße
rubberman
Bitte warten ..
Mitglied: Borob14
22.10.2014, aktualisiert um 17:57 Uhr
Danke für die 2 Tips, werde ich morgen testen.

@114757: ist interessant mit PS aber benötige das in ner bat.

@rubberman: sieht vielversprechend aus, werde ich morgen gleich mal testen, heute komm ich leider nicht mehr dazu.

Mit freundlichen Grüßen Rob


EDIT doch noch schnell Zeit gehabt:
FM: "="!line:%k=!"" kann syntaktisch an dieser Stelle nicht verwendet werden
Bitte warten ..
Mitglied: rubberman
LÖSUNG 22.10.2014, aktualisiert 23.10.2014
Hallo Rob,

sorry Schreibfehler. Der Vergleichsoperator ist == und nicht =. Hab's oben korrigiert,

Grüße
rubberman
Bitte warten ..
Mitglied: Borob14
23.10.2014 um 07:10 Uhr
Danke Rubberman,

hat geklappt und Config Datei wurde ordnungsgemäß übertragen!

Damit hat sich das hier erledigt.

mfg Rob
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Batchdatei: Datei nach bestimmten Zeilen durchsuchen und in anderer Datei einfügen

Frage von Vit1985Batch & Shell1 Kommentar

Hallo, ich möchte mit einem batch aus einer *.msg Datei 4 Zeilen heraussuchen und diese Zeilen sollen dann in ...

Batch & Shell

Grep Textdatei nach mehreren Strings durchsuchen je String Anzahl der Zeilen ausgeben

gelöst Frage von cuilsterBatch & Shell8 Kommentare

Hallo lieber Foristen, Folgendes konnte ich bereits erfolgreich eruieren. Grep sucht in der Datei nach "ocsp" und spuckt mir ...

Batch & Shell

Batch: Durchsuche .txt nach unterschiedlichen Strings - wenn gefunden mache was

gelöst Frage von kaufparkanguckerBatch & Shell6 Kommentare

Hallo Forengemeinde, auf der Suche nach einer Lösung für mein Problem bin ich über dieses Forum gestolpert. Ich habe ...

Batch & Shell

Batch bestimme Zeile einer vorherigen batch einfügen

Frage von FrenscheBatch & Shell9 Kommentare

Hallo ich möchte eine Batch erstellen, in der ein Befehl ausgeführt wird und von dort aus eine bestimmte Zeile ...

Neue Wissensbeiträge
Windows 10

Microcode-Updates KB4090007, KB4091663, KB4091664, KB4091666 für Windows 10

Information von kgborn vor 28 MinutenWindows 10

Kurze Information für Administratoren von Windows 10-Systemen, die mit neueren Intel CPUs laufen. Microsoft hat zum 23. April 2018 ...

iOS
Updates für Iphone und Co
Information von sabines vor 3 StundeniOS

Gestern abend ist iOS 11.3.1 erschienen, ein kleineres Update, dass einige Lücken schließt und "Lahmlegen" nach einem Display Tausch ...

Windows 7

Windows 7 - Server 2008 R2: Exploit für Total Meltdown verfügbar

Information von kgborn vor 1 TagWindows 7

Kleine Information für Administratoren, die für die Updates von Windows 7 SP1 und Windows Server 2008 R2 SP1 verantwortlich ...

Sicherheit

Zero Day-Schwachstelle im Internet Explorer - wird von APT bereits ausgenutzt

Information von kgborn vor 1 TagSicherheit

Im Kernel des Internet Explorer scheint es eine Zero Day-Lücke zu geben, die von staatlichen Akteuren (APT) im Rahmen ...

Heiß diskutierte Inhalte
C und C++
Frage1 C Programmierung-Makefile Frage2 PHP-Programmierung HTTP-Fehler 404
Frage von KatalinaC und C++28 Kommentare

Hallo, ich habe 2 Fragen, die nichts miteinander zu tun haben aber mit denen ich mich gerade beschäftige: 1. ...

LAN, WAN, Wireless
Watchguard T15 VPN Einrichtung
gelöst Frage von thomasjayLAN, WAN, Wireless25 Kommentare

Hallo zusammen, wir möchten gerne über unsere Watchguard T15 einen VPN-Tunnel (Mobile VPN with IPSec) einrichten! Als Client nutzen ...

DSL, VDSL
ISP Wechsel auf Vodefone Koax, Gebäudeverkabelung nur per Cat 7
gelöst Frage von wusa88DSL, VDSL19 Kommentare

Hallo Zusammen, ich bin momentan bei Mnet als Glasfaser Kunde und möchte Preis/Leistungs-Technisch zu Kabel Deutschland / Vodafone wechseln. ...

Hyper-V
HyperV DC + DNS + AC
gelöst Frage von HardstylesHyper-V16 Kommentare

Hallo kann mir jemand sagen wieso meine Domänen Computer kein Internetzugang erhalten? Ich hab hier ein Server wo die ...