Anzeige:
Ergebnis 1 bis 3 von 3

Thema: Shell: Ein Zeichen vor die Zeile setzen, bei Teilübereinstimmung von String

  1. #1
    Registrierter Benutzer
    Registriert seit
    13.04.2002
    Ort
    Bad Camberg
    Beiträge
    38

    Shell: Ein Zeichen vor die Zeile setzen, bei Teilübereinstimmung von String

    Moin, moin.

    Bin etwas eingerostet ws meine Shell-Kenntnisse angeht.
    Habe folgendes vor:

    1. Zeile suche, welche einen bestimmten String enthält
    2. Wenn das erste Zeiche keine # ist, dann setze eine # vor die Zeile.
    3. Soll direkt in der Datei passieren

    Komme aber irgendwie nimmer weiter.
    Code:
    if [ `grep "/opt/him/bin/startDbUpd.pl" netmaster.txt | awk '{print substr($0,0,1)}'` != "#" ] ; then
    
    	--> Hier muss nun der CODE rein, welche mir in der Datei netmaster.txt vor die gefundene Zeile eine # setzt
    	
    fi
    Vielleicht hat da jemand die Lösung für mich.
    Ich sage schonmal Danke.
    Gruss
    Rene

  2. #2
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    Sowas?

    Code:
    peschmae@sid:/tmp$ cat test.txt 
    Zeile 1
    Zeile 2
    Zeile 3
    Zeile 4
    peschmae@sid:/tmp$ sed "/Zeile 3/ s/^/#/" < test.txt 
    Zeile 1
    Zeile 2
    #Zeile 3
    Zeile 4
    peschmae@sid:/tmp$
    Kannst du, ums direkt in die Datei verwenden auch mit
    Code:
    sed "/Zeile 3/ s/^/#/"  -i datei.txt
    machen.

    Erklärung: wenn das "/Zeile 3/" auf eine Zeile matcht wird sie von Sed behandelt. Dann wird das s/^/#/ ausgeführt, das ein ^ (der Zeilenanfang ;-)) durch ein # "ersetzt"

    Für ein andermal: Liefer doch bitte gleich ein paar Input und Output-Datensätze mit; meistens ists so einfacher zu verstehen und auch zu testen, ob das Zeugs wirklich genau das tut was du willst oder nicht.

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  3. #3
    Registrierter Benutzer
    Registriert seit
    13.04.2002
    Ort
    Bad Camberg
    Beiträge
    38
    Supi, Danke.

    ^ (der Zeilenanfang) --> Das war es. Lang lang ists her. :-))

    Nochmals Danke.
    Gruss
    Rene

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •