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

SED Sonderzeichen maskieren klappt nicht.

Frage Entwicklung Batch & Shell

Mitglied: BloodyRulz

BloodyRulz (Level 1) - Jetzt verbinden

08.12.2014, aktualisiert 09.12.2014, 2131 Aufrufe, 5 Kommentare, 1 Danke

Hallo zusammen,

ich hoffe Ihr könnt mir helfen.
System: Windows

Folgendes Problem:
Ich habe eine Konfigdatei von einem Router.
Diese enthalten die Zeichen <> z.B so: <Targethost1> 172.18.XX.YY </Targethost1>

Mein Ziel ist es. die 172.18.XX.YY mit einer IP z.B. 172.18.25.60 zu ersetzen. Leider kann ich nicht einfach die IP ersetzen da es 4 Targethosts 1-4 gibt und in jeder muss eine andere 172er Adresse stehen. Daher muss ich mit Targethost1> Targethost2> usw. suchen und ersetzen.

Ausschnitt aus meinem Versuch.
01.
set th1= 172.18.XX.YY 
02.
set pingcheck1=172.18.25.60 
03.
sed -e "s/\<Targethost1\> *%th1%/\<Targethost1\> %pingcheck1% /" quell_datei.epr > Output.epr
sobald ich die <> in der Quelldatei zu Testzwecken entferne, funktioniert es wunderbar.

Würde mich über Hilfe sehr freuen.

Danke

Gruß
Andreas
Mitglied: 114757
08.12.2014, aktualisiert um 16:43 Uhr
Moin Andreas,
benutze das ^ Zeichen um Sonderzeichen zu maskieren, also z.B.
^>
Gruß jodel32
Bitte warten ..
Mitglied: BloodyRulz
08.12.2014, aktualisiert um 16:58 Uhr
Vielen Dank für die schnelle Antwort,

ich habe es auf die schnelle mal probiert, leider hat sich die IP nicht ersetzt. (ohne Fehlermeldung)

Ich werde das gleich morgen nochmal genau testen und probieren.

Muss ich das dann in der ganzen sed Zeile abändern obwol die anderen "Ersetzungen" super funktionieren?

01.
sed -e "s/DS100/%ds100%/; s/ART STANDORTNAME/%artstandort%/; s/ZZ.FF/%zo%.%do%/; s/ZZ.0./%zo%.0./; s/.HH/.4/; s/\$Revision: /Revision:/; s/ *\$ */  /; s/^<Targethost1^> *%th1%/^<Targethost1^> %pingcheck1% /" %quell_datei% > %ds100%_%artstandort%_RFU1.epr
Danke für deine schnelle Hilfe.

Gruß
Andreas
Bitte warten ..
Mitglied: Gersen
08.12.2014, aktualisiert 09.12.2014
Hallo,

vielleicht habe ich einen Denkfehler, aber die Zeichen "<>" müssen in sed nicht escaped werden, oder?

Ein
sed -e "s/<Targethost1>%th1%/<Targethost1> %pingcheck%/"
tut es -hier zumindest- wunderbar. Wichtig ist, dass bei Deiner Zuweisung der Variablen "th1" in Windows die Variable ein führendes Leerzeichen hat (" 172.18.XX.YY") - das muss im SED-Befehl beachtet werden (wenn es so beabsichtigt ist).

Gruß,
Gersen
Bitte warten ..
Mitglied: colinardo
LÖSUNG 08.12.2014, aktualisiert 09.12.2014
Hallo Andreas,
das hier macht bei mir das gewünschte
01.
@echo off 
02.
set pingcheck1=172.18.25.60 
03.
sed -e "s/\(<Targethost1>\).*\(<\/TargetHost1>\)/\1%pingcheck1%\2/i" quell_datei.epr >Output.epr
Grüße Uwe
Bitte warten ..
Mitglied: BloodyRulz
09.12.2014 um 08:12 Uhr
Vielen Dank an alle,

die Lösung von colinardo hat den gewünschten Erfolg gebracht.

Vielen Dank

Gruß
Andreas

(closed)
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Sonderzeichen bei Terminen - Office 2016

Frage von Martinaaa zum Thema Microsoft Office ...

Batch & Shell
gelöst Sonderzeichen Fehler aus Textdatei vermeiden (16)

Frage von Peter32 zum Thema Batch & Shell ...

Linux
gelöst URL und Username aus HTML-Datei extrahieren - sed, grep (4)

Frage von plutowitsch zum Thema Linux ...

Batch & Shell
Maskieren von Anführungszeichen in CMD (4)

Frage von Marc92 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
gelöst Raid-Controller (Areca) Datenverlust trotz R5 (16)

Frage von sebastian2608 zum Thema Festplatten, SSD, Raid ...

Server-Hardware
HP ProLiant DL380 G7, POST Error: 1785-Drive Array not Configured (10)

Frage von Paderman zum Thema Server-Hardware ...

Server-Hardware
Starker PC zum Virtualisieren (10)

Frage von canlot zum Thema Server-Hardware ...

Microsoft Office
gelöst Office 365 Pro Domäne einrichten OHNE Webseite (9)

Frage von thklemm zum Thema Microsoft Office ...