ubuntuusers.de

Sed Befehl - Suchen und erstezen der ganzen zeile

Status: Ungelöst | Ubuntu-Version: Ubuntu 14.04 (Trusty Tahr)
Antworten |

ichbinratlos

Anmeldungsdatum:
22. Januar 2017

Beiträge: Zähle...

Hallo Leute,

ich nutze den sed befehl in einem script um eine zeile in einer datei zu editieren, wie hier

1
sed -i -e 's%AdminPassword=%AdminPassword=test'  /pfad/gameserver.ini

das geht auch wunderbar.

das problem ist folgendes:

ich möchte die ganze zeile hinter s%AdminPassword= ersetzen, egal was hinter s%AdminPassword=(hier der vorherige text) steht.

spriche egal was hinter dem suchwort steht, die ganze zeile soll neugeschrieben werden.

aus:

AdminPassword=xyzxyzxyzxyz egal wie lang die zeile ist,

soll

AdminPassword=neuxyz werden.

vielen dank für eure hilfe

Bearbeitet von rklm:

Codeblöcke

Seebär

Avatar von Seebär

Anmeldungsdatum:
2. Mai 2009

Beiträge: 833

Tach und Willkommen. Schau mal im Wiki im Artikel sed nach den Grundlagen. Ich kann vor allem die dortigen verlinkten Seiten Nützliche, einzeilige Scripts für SED und sed Tutorium empfehlen. Da findet sich garantiert die Antwort, musste halt mal lesen / Zeit investieren.

Nebenbei: Dein Beitrag ist recht unleserlich. Besser mal in Zukunft darauf achten.

ichbinratlos

(Themenstarter)

Anmeldungsdatum:
22. Januar 2017

Beiträge: 8

Hi,

danke für die erste schnelle Antwort.

Aber wenn ich die Wikis verstehen würde, dann würde ich nicht fragen.

Mooi

Anmeldungsdatum:
15. August 2014

Beiträge: 187

Moin.

sed 's/AdminPassword=.*$/AdminPassword=neuxyz/'

Ein Adminpasswort im Text ist übrigens eine schlechte Idee.

ichbinratlos

(Themenstarter)

Anmeldungsdatum:
22. Januar 2017

Beiträge: 8

na, das ist ein unreal basierender gameserver, das pass muss für den ersten start darin stehen und leider in klarschrift

Seebär

Avatar von Seebär

Anmeldungsdatum:
2. Mai 2009

Beiträge: 833

ichbinratlos schrieb:

Aber wenn ich die Wikis verstehen würde, dann würde ich nicht fragen.

Handbücher / Hinweise muss man halt schon mal lesen und sich nicht alles vorkauen lassen. Zumal ja nicht in der Zeitung stehst, was du schon alles gelesen oder nicht gelesen hast. Und so schwer ist das nicht herauszufinden.

track

Avatar von track

Anmeldungsdatum:
26. Juni 2008

Beiträge: 7174

Wohnort: Wolfen (S-A)

Hallo Ratlos,

zuerst mal herzlich willkommen hier auf dem Forum !

Dann eine Bitte: schreib Code doch bitte in einen {{{Codeblock}}}, dann kann man ihn viel besser lesen:

ich nutze den sed befehl in einem script um eine zeile in einer datei zu editieren, wie hier

sed -i -e 's%AdminPassword=%AdminPassword=test'  /pfad/gameserver.ini

Ich glaube, das was Dir fehlt, ist ein Überblick über Reguläre Ausdrücke.

Das ist hier nämlich der Trick, dass Du den Rest der Zeile (egal wie lang der ist) mit einem ".*" adressieren kannst:

sed -i -e 's/AdminPassword=.*/AdminPassword=test/'  /pfad/gameserver.ini

(und am Ende den Begrenzer nicht vergessen !)

LG,

track

Antworten |