Ich versuche, den Befehl sed
in einem Shell-Skript in osx/bash zu verwenden. Ich bin gut in der Lage, wie einige Inhalte von MyFile
mit der einfachsten Form von Befehl zu ersetzen unterSed Befehl: Suche nach einem String und ersetzen 1 Zeichen nach dem String
sed -i -e 's/abc/123/g' MyFile
wo MyFile Inhalt ist xyzabcdefghijk
. Der obige Befehl funktioniert super zu ersetzen abc
mit 123
& die Ausgabe als xyz123defghijk
macht
Aber, Wie kann ich den sed
Befehl ändern ersetzen 2
Zeichen nach abc
als auch zusammen mit abc
. In klaren Worten, Ich möchte nach einer Zeichenfolge abc
in MyFile
& suchen ersetzen abc + 2
Zeichen danach mit 12345
. So
, wenn MyFile
enthält, abcdefghijk
dann sollte die Ausgabe enthalten xyz12345fghijk
Irgendwelche Vorschläge bitte?
wenn ich zwischen zwei Zeichen wie „abc“ durch „123“ ersetzt werden soll, was ist das 'sed' Option. Sie kümmern sich um diese kleine Frage .. –
Der zwischen zwei Zeichen Teil ist mir nicht klar. Würdest du erklären, was du damit meinst? Vielleicht fügen Sie Beispieleingabe und -ausgabe hinzu. – John1024
lässt sagen, Beispiel Eingabe ist 'xyz" 123 "45fghijk'. Ich brauche die Ausgabe, um xyz zu sein "96701" 45fghijk ...... So nach "xyz", gibt es 2 doppelte Anführungszeichen, die vorkommen. Ich möchte nur die Saite zwischen den 2 Doppelquadraten ersetzen, die direkt nach 'abc' auftreten, mit etwas wie '96701' –