Listando usuários em um grupo
Publicado por Robson Assis Candido Pereira Faria (última atualização em 16/05/2014)
[ Hits: 15.539 ]
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
Localizar e Matar Determinado Processo Pelo Nome
Script para fazer download de vídeos do YouTube
Facilitando algumas tarefas no CentOS 7
Nenhum coment�rio foi encontrado.
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Aplicativo simples para gravar tela
Quebra de linha na data e hora no Linux Mint
Firefox não abre em usuário não administradores (0)
Sempre que vou baixar algum pacote acontece o erro dpkg (8)
tentando instalar em um notebook antigo o Linux LegacyOS_2023... [RESO... (8)