The UNIX and Linux Forums  

Go Back   Die UNIX-und Linux-Foren > Top Foren > Shell Programmierung und Scripting
.
Google unix.com



Shell Programmierung und Scripting Post Fragen zu ksh, csh, sh, bash, Perl, PHP, sed, awk und anderen Shell-Skripte und Shell-Scripting-Sprachen hier.

Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
Faden Thread Starter Forum Antworten Last Post
Suchen und Ersetzen-String in Datei1 mit String aus (Lookup-Tabelle) Datei2? gstuart Shell Programmierung und Scripting 9 06-08-2009 07:11 AM
String ersetzen sam99 Shell Programmierung und Scripting 4 03-04-2008 01:39 AM
SED-String Ersetzen Hilfe prash184u Shell Programmierung und Scripting 2 01-23-2008 01:57 AM
ersetzen eine Zeichenkette melanie_pfefer Shell Programmierung und Scripting 11 01-17-2008 10:57 AM
Ersetzen-String B je nach Auftreten von A String hemangjani Shell Programmierung und Scripting 1 12-05-2006 05:10 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Suche diesen Thread Rate Thread Anzeige-Modi
  #1 (permalink)  
Old 04-08-2008
chiru_h chiru_h is offline
Registrierte Nutzer
  
 

Join Date: Jul 2006
Beiträge: 72
String ersetzen in XML mit sed

Grüße,
Ich habe eine XML: file.xml

Code:
<component>
       <name>abcd</name>
       <value>1234</value>
</component>

Ich bin mit sed zu ersetzen, ABCD mit den gewünschten Wert dynamisch, ohne zu wissen, den tatsächlichen Wert.

Code:
sed 's/<name>[-[:alnum:]./]\{1,\}<\/name>/<name>ijkl<\/name>/' file.xml > newfile.xml

Ich habe keine Probleme im Zusammenhang mit diesem Befehl in Linux, aber auf Solaris-Maschine, bekomme ich die Fehlermeldung:
Zitat:
sed: command entstellt: / <name> [- [: alnum :]./] \ (1, \) <\ / Name> / <name> IJKL <\ / Name> /
Wenn ich >[-[: alnum :]./] \ (1, \) und der tatsächliche Wert, es ist in Ordnung. Aber ich habe es dynamisch, wie ich es in der Schrift als Ersatz für den vorhandenen Wert mit dem angegebenen Wert.

Kann jemand bitte.

Danke,
Chiru

Zuletzt bearbeitet von Yogesh Sawant; am 04-08-2008 02:45 PM.. Grund: Code-Tags hinzugefügt
  #2 (permalink)  
Old 04-08-2008
reborg's Avatar
reborg reborg is offline Forum Staff  
Administrator
  
 

Join Date: März 2005
Ort: Irland
Posts: 4245
Ich bin überrascht, es funktioniert überall, das Kommando ist verzerrt zumindest in einer Art und Weise. Es gibt 4 / Zeichen in Ihrem Ausdruck.

Ich bin nicht auf einem Solaris-Box jetzt, aber ich bin ziemlich sicher, dass Solaris sed nicht unterstützt [::]-Format Ausdrücke, so dass Sie mehr von der so etwas wie:


Code:
sed 's#<name>\([^<][^<]*\)</name>#<name>SOMETHING</name>#' file.xml

  #3 (permalink)  
Old 04-08-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: Feb 2007
Posts: 4342
Wenn Sie ersetzen die gesamte Zeile sollte dies genügen:


Code:
sed 's#<name>.*#<name>SOMETHING</name>#' file.xml

Grüße
  #4 (permalink)  
Old 04-08-2008
ghostdog74 ghostdog74 is offline Forum Advisor  
Registrierte Nutzer
  
 

Join Date: Sep 2006
Beiträge: 2557
sollten Sie ein Tool zum Parsen von XML-, nicht sed. (obwohl es noch getan werden kann)
  #5 (permalink)  
Old 04-09-2008
chiru_h chiru_h is offline
Registrierte Nutzer
  
 

Join Date: Jul 2006
Beiträge: 72
Dank Reborg / Franklin..both von ihnen arbeiten, bin aber mit Reborg ist, als das andere ändert sich in einigen anderen Orten, an denen ich nicht brauchen.

Was sind die einfachste Möglichkeit, XML-Parsing - in dem Sinne, dass ich verwenden können, als Teil des Shell-Skript, das habe ich einige andere Aufgaben, wie gut.

Danke,
Chiru
  #6 (permalink)  
Old 04-09-2008
Ära era is offline Forum Advisor  
Herder sinnlosen Katzen (Am Sabbatical)
  
 

Join Date: März 2008
Location: / es / ist / nur / bin / sh
Beiträge: 3652
Die wenigsten schmerzhaften Weg hängt davon ab, das andere Anforderungen. Wenn die Datei einfach ist, dann einfach Line-orientierte Shell Dienstprogramme Sie mit in der Regel ausreichen sollte. Wenn Sie brauchen, etwas zu tun, die keine wirklichen Verständnis von XML-Strukturen (Schachtelung, Geschwister und ähnliche Beziehungen, Bedingungen usw.), dann wird es wohl sinnvoll, um zumindest eine gewisse Vertrautheit zu einigen einleitenden richtige XML-Werkzeug. Es gibt mehrere Formalismen zur Auswahl und viele Werkzeuge, die sie durchführen, ich persönlich habe in der Lage, die Dinge mit xsltproc nach dem ersten Schock zu versuchen zu verstehen, was hat in den Köpfen der Menschen, die sich mit den Spezifikationen für diese.
Closed Thread

Lesezeichen

Tags
Linux, solaris

Thread Tools Suche diesen Thread
Suche diesen Thread:

Erweiterte Suche
Anzeige-Modi Rate this thread
Rate this thread:

Forumregeln
Du möglicherweise nicht neue Themen
Du möglicherweise nicht nach Antworten
Du möglicherweise nicht post-Anlagen
Du möglicherweise nicht bearbeiten Sie Ihre Beiträge

BB-Code ist Auf
Smilies sind Auf
[IMG] Code Auf
HTML-Code ist Aus
Trackbacks sind Auf
Pingbacks sind Auf
Refbacks sind Auf




Alle Zeiten sind GMT -4. Es ist jetzt 04:43 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Ltd. Sprachliche Übersetzungen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Die UNIX-und Linux-Foren Content © Copyright 1993-2009. Alle Rechte Reserved.Ad Management von RedTyger

Content Relevant URLs durch vBSEO 3.2.0