Listando usuários em um grupo
Publicado por Robson Assis Candido Pereira Faria (última atualização em 16/05/2014)
[ Hits: 15.647 ]
Homepage: http://iniciantedigital.blogspot.com/
Script para listar usuários em um grupo.
Os script está em inglês, mas manipula grupos dentro do GNU/Linux ou HP-UX.
Funções:
- Lista usuários dentro de um grupo, sendo ele primário ou secundário.
- Lista usuários que tem o grupo como primário somente ou como secundário, de acordo com a opção escolhida.
- Exibe o ID do grupo (GID).
- Lista todos os grupos da máquina em ordem crescente.
Na dúvida use o comando lgroup com a opção "--help":
$ lgroup --help
Options to list group:
Use lgroup [option] [group] or lgroup [group] to list all users in primary and secundary group
-p : List only users in primary group
-s : List only users in secundary group
-v : List all users in verbose mode
-i : Show the group GID
-l : List all groups in /etc/group
O objetivo é facilitar a manipulação de grupos no GNU/Linux ou sistemas UNIX HP-UX, não testado em todas as distribuições.
#! /bin/sh if [ "$2" != "" ]; then group=$2; var=$1; groupid=`cat /etc/group | grep "^$group:" | awk -F ":" '{ print $3}'`; if [ "$groupid" != "" ]; then case $var in "-p" ) cat /etc/passwd | awk -F ":" '{print $4":"$1}' | grep "$groupid:" | awk -F ":" '{print $2}'; ;; "-s" ) cat /etc/group | grep "^$group:" | awk -F ":" '{ print $4}' | tr "," "\n"; ;; "-v" ) echo "primary:"; cat /etc/passwd | awk -F ":" '{print $4":"$1}' | grep "$groupid:" | awk -F ":" '{print $2}'; echo ""; echo "secundary:"; cat /etc/group | grep "^$group:" | awk -F ":" '{ print $4}' | tr "," "\n"; ;; "-i") echo "$group:" cat /etc/group | grep $group | awk -F ":" '{ print "gid ("$3")"}'; esac else echo "Can't find group $group"; fi elif [ "$1" == "--help" ]; then echo -e "\n" echo "Options to list group:"; echo "Use lgroup [option] [group] or lgroup [group] to list all users in primary and secundary group"; echo "-p : List only users in primary group"; echo "-s : List only users in secundary group"; echo "-v : List all users in verbose mode"; echo "-i : Show the group GID"; echo "-l : List all groups in /etc/group"; echo -e "\n\n" elif [ "$1" == "-l" ]; then cat /etc/group | awk -F ":" '{ print $3":"$1}' | sort -n | awk -F ":" '{ print "group("$2") gid("$1")"}'; else group=$1; groupid=`cat /etc/group | grep "^$group:" | awk -F ":" '{ print $3}'`; if [ "$groupid" != "" ]; then cat /etc/group | grep "^$group:" | awk -F ":" '{ print $4}' | tr "," "\n" cat /etc/passwd | awk -F ":" '{print $4":"$1}' | grep "$groupid:" | awk -F ":" '{print $2}' else echo -e "\nPlease enter option and group or put --help to get help\n"; fi fi
Limitando largura de banda com o CBQ
Instalação e configuração do celular Nokia 6670 no Ubuntu 8.10
Script de controle do Alfresco para RHEL / CentOS / Fedora
Claro 3g Sony Ericsson md300 script conexao
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
estou na 22.1 e não é atualizado pra 22.4 via "sudo full-upgrade&... (6)
É normal não gostar de KDE? (6)
Impressora epson l6270 não funciona em Linux mint (0)