cut Befehl im awk Befehl!?

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von onlineuser, 09.05.2006.

  1. #1 onlineuser, 09.05.2006
    onlineuser

    onlineuser Mitglied

    Dabei seit:
    05.05.2006
    Beiträge:
    34
    Zustimmungen:
    0
    Hi,

    habe ein kleines Problem.

    Möchte gerne aus der Prozessliste aus den VNC-Sessions die Desktopnummer auslesen. Soweit sogut, nur müßte ich innerhalb der awk-Anweisung mit cut einen Doppelpunkt wegschneiden.

    ps axuw | grep "Xvnc :" |awk '{ print $1 "-" $2 "-" $12}'

    Bei $12 müßte ich den voranstehenden Doppelpunkt entfernen. Habe leider keine Syntax gefunden, in der man innerhalb des awk-Befehls das realisieren könnte.

    Wenn ich hingegen in eine Variale speichern würde, müßte ich ein Array verwenden, da es ja mehrere VNC-Sessions gibt.

    Denke ich zu kompliziert? *gg*

    Weiters müßte ich noch mit netstat rausfinden, ob eine Session verbunden oder nur listen ist und dem jeweiligen Prozesseintrag zuordnen. Hat hierfür jemand einen Lösungsweg ausser in ein Array zu schreiben!?

    Dachte mir sonst, die Verbindungen auf Port 5900 + Desktopnummer aus der Prozessliste durchzugehen und auszulesen, ob die Session aktiv oder nicht aktiv ist.

    Liebe Grüsse.
     
  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. #2 slasher, 09.05.2006
    slasher

    slasher König

    Dabei seit:
    22.03.2006
    Beiträge:
    827
    Zustimmungen:
    0
    ersetz das Zeichen, bevor du die Variable in deiner AWK-Zeile verwendest, aber du kannst auch innerhalb AWK ersetzen.
     
  4. #3 onlineuser, 09.05.2006
    Zuletzt bearbeitet: 09.05.2006
    onlineuser

    onlineuser Mitglied

    Dabei seit:
    05.05.2006
    Beiträge:
    34
    Zustimmungen:
    0
    Hi,

    Code:
    #!/bin/bash
    clear
    for i in `ps axuw | grep "Xvnc :" | awk '{ print $1 " - " $2 " - " $12 }' | awk -F : '{ print $1$2 }' | grep -v "Xvnc"`
    do
      echo $i 
    done
    Habe es jetzt mal so gelöst. Jedoch wird jetzt nach jedem Eintrag ein Zeilenumbruch getätigt. Anscheinend teilt die For-Schleife den Ausdruck in mehrere Ergebnisse auf und nicht zeilenweise:

    User_1 - PID_1 - Desktopnummer_1 +dazupassende netstat-Ausdruck
    User_2 - PID_2 - Desktopnummer_2 +dazupassende netstat-Ausdruck
    User_3 - PID_3 - Desktopnummer_3 +dazupassende netstat-Ausdruck
    usw.

    Im Moment gibt er mir jeden Wert in einer Extra Zeile aus.

    also:
    User_1
    PID_1
    Desktopnummer_1
    User_2
    PID_2
    Desktopnummer_2
    User_3
    PID_3
    Desktopnummer_3
    usw.

    Wie kann ich das realisieren? Nach jeder Zeile (User, PID und Desktopnummer) muss ich den netstat aufrufen und auswerten lassen.

    PS: Aha, die For-Schleife teile nach Leerzeichen auf. Habe diese entfernt, jetzt läuft sie für jeden Prozesseintrag nur einmal durch. :)

    PROBLEM GELÖST

    Jedoch hab ich nun ein neues Problem. *gg*

    Ich muss netstat -a | grep 5900+Desktopnummer filtern. Wie kann ich bei grep im Parameter mathematische Operationen ausführen lassen? Zuvor rechnen und Zwischenspeichern gefällt mir nicht so sehr. Gibt es da eine Möglichkeit?

    Liebe Grüsse.
     
Thema:

cut Befehl im awk Befehl!?

Die Seite wird geladen...

cut Befehl im awk Befehl!? - Ähnliche Themen

  1. Centosbefehle

    Centosbefehle: Hallo ich habe ein Centos 7.2.15.11 image (mit Hdclone von Miray gemacht) Ich möchte das Image auf eine existierende Ubuntu installation...
  2. Kurzzusammenfassung der Befehle und Progr. für die shell

    Kurzzusammenfassung der Befehle und Progr. für die shell: Hallo zusammen, bei der Verbesserung eines meiner Scripte bin ich nach ausführlicher Recherche auf den Befehl (Prog?) "file" gestossen. Dieser...
  3. Befehlssequenz

    Befehlssequenz: Hallo zusammen, Ich bin ein Anfänger der Unix-Sprache und versuche gerade eine Befehlssequenz zusammen zu schustern, welche mir alle laufenden...
  4. Befehl beim Session beenden

    Befehl beim Session beenden: Hallo allerseits, ich habe vor ein Verzeichnis auf meinem Webserver zu verschlüsseln. Ich will, sobald ich darauf zugreifen muss/will eine...
  5. Zeile für Zeile auslesen und Befehl ausführen

    Zeile für Zeile auslesen und Befehl ausführen: Hallo Zusammen Ich habe folgendes Problem: Ich möchte eine Datei zeilenweise auslesen und jede Zeile als Pattern für grep verwenden. Die...