Benutzer auflisten mit dialog

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von @->-, 03.04.2009.

  1. @->-

    @->- Guest

    Hallo, ich brauche mal eure Hilfe bei einem für mich verzwickten Problem.

    Ich befasse mich seit einigen Stunden gezwungenermaßen mit Shell Scripten :) . Jetzt möchte ich gerne mithilfe von dialog bzw. Xdialog eine Liste der am System vorhandenen Benutzer ausgeben. Der aufbau des dialog/xdialog Aufrufes soll etwa so aussehen:
    Code:
    Xdialog --menu "Benutzer auswahlen" 15 50 8 \
            User 1 "" \
            User 2 "" \
            User 3 "" 2> /tmp/dialog.sel
    Die Benutzer lese ich aus mit:
    Code:
    sort -t: -k3 -n /etc/passwd | (IFS=: ; while read u p uid rest ; do if [ $uid -gt 500 ] ; then echo "$u" ; fi ; done )
    Nun muss ich die Benutzernamen nur noch in das Menü bekommen. Ich habe jetzt schon einige Stunden gebastelt jedoch ohne Erfolg. Im Prinzip muss ich ja nur den Xdialog Befehlt stück für Stück zusammen bauen das er wie oben aussieht. Ich bekomme es aber einfach nicht hin... Hat jemand von euch eine Idee? Hoffe das ich mich einigermaßen verständlich ausgedrückt habe :)

    In diesem Sinne
     
  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 slackfan, 03.04.2009
    Zuletzt bearbeitet: 03.04.2009
    slackfan

    slackfan König

    Dabei seit:
    18.04.2006
    Beiträge:
    809
    Zustimmungen:
    0
    Ort:
    Bonn
    Hallo,
    Code:
    #!/bin/bash
    ULIST=""
    COUNT=0
    IFS=:
    while read u p uid rest ; do
      if [ $uid -ge 500 ] ; then
        COUNT=$((COUNT+1))
        ULIST="$ULIST Benutzer$COUNT $u"
      fi
    done < <(sort -t: -k3 -n /etc/passwd)
    IFS=" "
    dialog --menu "Benutzer" 15 50 8 $ULIST
    
    ich nehme an, du scheiterst an der Pipe. Eine Pipe macht eine Subshell auf. Da kannst du nicht einfach mit den elterlichen Variablen weiterarbeiten. Außerdem müsste es -ge und nicht -gt im if-Statement lauten, wenn du uid bei 500 verbleiben soll. Sonst wird der erste "normale" Benutzer ignoriert.


    cu
     
Thema:

Benutzer auflisten mit dialog

Die Seite wird geladen...

Benutzer auflisten mit dialog - Ähnliche Themen

  1. PHP Skripte werden nur im Verzeichnis des jeweiligen Benutzers ausgeführt

    PHP Skripte werden nur im Verzeichnis des jeweiligen Benutzers ausgeführt: Hallo zusammen, ich bin mit meinen Domains auf einen neuen Webserver umgezogen. Ein Teil meiner Domains lief auf Drupal als...
  2. Bareos 15.2 mit neuer Benutzeroberfläche

    Bareos 15.2 mit neuer Benutzeroberfläche: Die freie Backup-Lösung Bareos wurde in Version 15.2 veröffentlicht. Die Neuerungen der aktuellen Version umfassen unter anderem eine verbesserte...
  3. Richtlinien für Gnome-Benutzerschnittstelle aktualisiert

    Richtlinien für Gnome-Benutzerschnittstelle aktualisiert: Das Gnome-Projekt hat seine Richtlinien, wie die Benutzerschnittstelle von Anwendungen aussehen sollte, in einer neuen Fassung veröffentlicht....
  4. Garrett: Intel Boot Guard contra Benutzerfreiheit

    Garrett: Intel Boot Guard contra Benutzerfreiheit: Mit dem Boot Guard hat Intel einen neuen Sicherheitsmechanismus geschaffen, der das Ersetzen des BIOS durch eine manipulierte Version verhindern...
  5. Git 2.2 ist schneller und benutzerfreundlicher

    Git 2.2 ist schneller und benutzerfreundlicher: Die Git-Entwickler haben ihre freie Versionsverwaltung auf die Version 2.2 aktualisiert und in dem Zusammenhang über 550 Neuerungen, Änderungen...