Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Skript -- Problem bei der Ausgabe

Empfohlene Antworten

Hi @all,

ich hab folgendes kleine Skript:

GROUP_PFAD=/etc/group

i=700


for USER in `awk -F: '{print $1}' /etc/passwd`

 do

   GROUP=`grep $USER $GROUP_PFAD | awk -F: '$3>=100 {print $1}'`

   echo "groupadd -g $i $GROUP"

   i=`expr $i + 1`

 done

Wie man sehen kann, holt sich das Skript die user aus der /etc/passwd und gibt mir dann die grouppen aus, in denen sich einer mindest einer dieser user befindet. Dann generiert er mir ein groupadd befehl. Jetzt habe ich 2 Probleme. 1. Er gibt mir ein paar Gruppen aus, in denen keine User sind (siehe unten) 2. Es kommt folgende ausgabe:
groupadd -g 700

groupadd -g 701

groupadd -g 702

groupadd -g 703

groupadd -g 704

groupadd -g 705

groupadd -g 706

groupadd -g 707

groupadd -g 708

groupadd -g 709

groupadd -g 710

groupadd -g 711

groupadd -g 712

groupadd -g 713 nobody ---> Hier sind keine USER drin 

nogroup ------------------------> Warum bring er das auch raus ?

groupadd -g 714

groupadd -g 715

groupadd -g 716

groupadd -g 717

groupadd -g 718

groupadd -g 719 radiusd  ---> Hier sind keine USER drin 

groupadd -g 720

groupadd -g 721 privoxy  ---> Hier sind keine USER drin 

groupadd -g 722

groupadd -g 723

groupadd -g 724 grouptest

An sich sollte er mir nur folgendes ausgeben:
groupadd -g 700 grouptest

Den grouptest ist die einzigste gruppe die einen User auf der passwd hat und deren gID größer 100 ist.

Kann mir jemand weiter helfen ? Blick das nicht so ganz

Hi!

Dein Problem ist, dass der Username auch im gruppennamen vorkommen kann.

(Denke ich - hab mich da jetzt nciht so reingesteigert ;))

Original geschrieben von geist_der_foren

GROUP=`grep $USER $GROUP_PFAD | awk -F: '$3>=100 {print $1}'`

ersetze mal das grep $USER durch:

egrep '[:,]'$USER

HTH

Danke ... du hast mich auf die Idee gebracht hier ist der code, falls es mal jemand braucht:

#!/bin/bash


GROUP_PFAD=/etc/group

i=700


for USER in `awk -F: '{print $1}' /etc/passwd`

 do

   for USERB in `grep :$USER $GROUP_PFAD`

    do

     GROUP=`echo $USERB | awk -F: '$3>=100 {print $1}'`

     GROUP_USER=`echo $USERB | awk -F: '$3>=100 {print $4}' | sed 's/,/ /g'`

     if [[ $GROUP && $GROUP_USER ]]

     then

      echo "groupadd -g $i $GROUP"

      echo "gpasswd -a $GROUP_USER"

      i=`expr $i + 1`

     fi

    done

 done

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Konto

Navigation

Suchen

Suchen

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.