grep?

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von schlawiner, 21.08.2010.

  1. #1 schlawiner, 21.08.2010
    schlawiner

    schlawiner Jungspund

    Dabei seit:
    21.08.2010
    Beiträge:
    14
    Zustimmungen:
    0
    Hallo,

    ich habe eine Variable $test1 die folgende ausgabe bringt

    +set dedicated 2 +exec server.cfg +exec fastdl.cfg +set net_ip 213.89.12.5 +set net_port 28960 +set sv_maxclients 20 +set fs_basepath ./ +set fs_homepath ./.callofduty4 +set fs_game mods/promodlive204 +set sv_punkbuster 1 +g_password +map_rotate

    wie filter ich nun da die 213.89.12.5 und mods/promodlive204 raus und setze die beiden in je eine variable.

    Dachte mit grep aber komme auf keine lösung da sich die ip (ausser die 84) und auch der mod (ausser mods/) ändern kann.
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. daboss

    daboss Keine Macht für niemand!

    Dabei seit:
    05.01.2007
    Beiträge:
    1.294
    Zustimmungen:
    0
    Ort:
    sydney.australia.world
    Code:
    grep  -Eo "[[:digit:]]{1,3}(\.[[:digit:]]{1,3}){3}"
    liefert dir immerhin schonmal die IP-Adresse aus der ersten Zeile:
    Code:
    {-alex-|-asterix-} => [~]
    (14:24:35) echo "+set dedicated 2 +exec server.cfg +exec fastdl.cfg +set net_ip 213.89.12.5 +set net_port 28960 +set sv_maxclients 20 +set fs_basepath ./ +set fs_homepath" | grep  -Eo "[[:digit:]]{1,3}(\.[[:digit:]]{1,3}){3}"
    213.89.12.5
    
     
  4. #3 Gast123, 22.08.2010
    Gast123

    Gast123 Guest

    Hallo,

    Code:
    schard@thinkpad:~» TEST="+set dedicated 2 +exec server.cfg +exec fastdl.cfg +set net_ip 213.89.12.5 +set net_port 28960 +set sv_maxclients 20 +set fs_basepath ./ +set fs_homepath ./.callofduty4 +set fs_game mods/promodlive204 +set sv_punkbuster 1 +g_password +map_rotate"
    schard@thinkpad:~» echo $TEST | cut -d "+" -f [B]5[/B] | cut -d " " -f 3
    213.89.12.5
    schard@thinkpad:~» echo $TEST | cut -d "+" -f [B]10[/B] | cut -d " " -f 3
    mods/promodlive204
    schard@thinkpad:~» 
    
     
  5. #4 schlawiner, 22.08.2010
    schlawiner

    schlawiner Jungspund

    Dabei seit:
    21.08.2010
    Beiträge:
    14
    Zustimmungen:
    0
    Hallo das mit dem /mods/pro..... funzte nicht ganz ich habs nun so gelöst cfgpfad1=`echo $* | awk -F\fs_game '{print $2}' | awk -F + '{print $1}'`

    wie kann ich nun die satrtparameter nach dem parameter fs_game furchsuchen, ich dachte so aber das funktionierte ned da es wohl keine textdatei is

    if cat $* | grep "fs_game..." ; then
    cfgpfad=$cfgpfad1
    else
    cfgpfad=$cfgvar
    fi
     
  6. #5 schlawiner, 22.08.2010
    schlawiner

    schlawiner Jungspund

    Dabei seit:
    21.08.2010
    Beiträge:
    14
    Zustimmungen:
    0
    Also ich fasse mal zusammen um nun noch die etwas kleineren probs zu klären

    Die IP bekomme ich durch: gsip=`echo "$*" | grep -Eo "[[:digit:]]{1,3}(\.[[:digit:]]{1,3}){3}"`

    funktioniert wunderbar

    Den Modordner bekommen ich durch cfgpfad=`echo $* | awk -F\fs_game '{print $2}' | awk -F +set '{print $1}'`

    kann den modpfad wunderbar rauslessen nur gibt er mit das leerzeichen aus den parametern mit aus.
    folgende Fehlermeldung sobald das script in den Ordner schreiben will

    ./cod4_run: line 54: mods/promodlive204 /config.cfg: No such file or directory


    zu guter letzt brauche ich noch die Möglichkeit das dieses Script die Serverstartparameter $* nach dem Begriff fs_game durchsucht

    Sprich ist fsgame vorhanden

    soll er den der parameter so ausgegeben werden

    cfgpfad=`echo $* | awk -F\fs_game '{print $2}' | awk -F +set '{print $1}'`

    wenn nicht dann

    cfgpfad=main


    ich danke Euch für die bisherige hilfe
     
Thema:

grep?

Die Seite wird geladen...

grep? - Ähnliche Themen

  1. Kurztipp: Unerwünschte grep-Ausgaben vermeiden

    Kurztipp: Unerwünschte grep-Ausgaben vermeiden: Selbst aus altbekannten Programmen kann man oft noch einiges mehr herausholen - man muss sich nur einmal gründlich mit ihnen auseinandersetzen....
  2. GNU Grep 2.19 freigegeben

    GNU Grep 2.19 freigegeben: Von dem Textsuchprogramm GNU Grep ist jetzt Version 2.19 erschienen, die um durchschnittlich zehn Prozent schneller als die Vorgängerversion...
  3. KWin 4.90.1 wartet auf Bugreports

    KWin 4.90.1 wartet auf Bugreports: Martin Gräßlin, Maintainer des KDE-Fenstermanagers, hat den Code für KWin/5 als für gut genug befunden, um ihn im erweiterten Kreis testen zu...
  4. grep Ausgabe an ls übergeben

    grep Ausgabe an ls übergeben: Kann ich die Ausgabe von grep (es sind dateinamen des lokalen verzeichnisses) irgendwie gleich weiterpipen zu ls? Also so das ich zu den...
  5. Grep bis zum ersten Vorkommen

    Grep bis zum ersten Vorkommen: Hallo Zusammen, ich habe ein kleines Problem. :) Die Ausgangssituation ist folgende: Der String...