Ich habe die folgende Textdatei mit den folgenden Zeilen:grep sed, nach String Match hängen, sondern auf Zeilenende
<test="123">
<test="456">
<test="789">
Mein Ziel ist es, die oben Textdatei zu haben, mit einem Schlüsselwort angehängt werden „HALLO“ nach den oben genannten Zahlen, wie folgend:
<test="123.HELLO">
<test="456.HELLO">
<test="789.HELLO">
mit dem Befehl grep und geschnitten, schaffe ich es, den Wert zwischen den Anführungszeichen zu bekommen.
grep -o "test=".* test.txt | cut -d \" -f2
Ich habe versucht, auf es zu benutzen sed, mit dieser Linie
grep -o "test=".* test.txt | cut -d \" -f2 | sed -i -- 's/$/.HELLO/' test.txt
aber die nächste, die ich zu bekommen verwalten, ist stattdessen ein „.HELLO“, die am Ende der Zeile direkt angehängt (und nicht nach den Zahlen zwischen den Anführungszeichen)
<test="123">.HELLO
<test="456">.HELLO
<test="789">.HELLO
Wie kann ich meine sed Aussage beheben mich mit der gewünschten Linie zu schaffen?
können Sie klären: 1) Plätze vor der erwarteten Ausgangsleitungen benötigt wird oder falsch hier wegen der Formatierung 2 dargestellt) wird die Eingabedatei enthalten Zeilen nicht 'Test enthält ='? wenn ja, sollten sie auch Teil der Ausgabe sein – Sundeep