Listar os usuários do sistema com laço FOR [RESOLVIDO]

1. Listar os usuários do sistema com laço FOR [RESOLVIDO]

carlos eduardo da silva braga
cadu405

(usa Outra)

Enviado em 28/04/2020 - 18:27h

Boa noite
Estou fazendo um código no qual preciso usar um for, para exibir usuário depois seu nome completo,
segue meu codigo :

#!/bin/bash
#exibe o user
user=$(cat /etc/passwd | cut -d ":" -f1)
#exibe o nome completo
nomec=$(cat /etc/passwd | cut -d ":" -f5)

for $user in
do
echo "$user,nome completo:$nomec"
done
Exemplo usuário se chama X, seu nome completo é XYZ
preciso que meu for encaixe o X com o YZ

OBS:não sei se usar o cat no /etc está certo.




  


2. MELHOR RESPOSTA

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 28/04/2020 - 21:20h

Segue, com o awk, no laço for, meio estranho, mas..... foi o que solicitou.....

#!/bin/bash
for user in $(cut -d":" -f1 /etc/passwd);do
awk -F":" '$1~/'${user}'/ {printf "Nº %02d Usuário:%s Nome:%s\n" ,NR,$1,$5}' /etc/passwd
done
O mesmo resultado...., 18 x mais rápido!!!!!
awk -F":" '$1~/.*/ {printf "Usuário:%s Nome:%s\n",$1,$5}' /etc/passwd


Boa noite Cadu.
O comando:
user=$(cut -d ":" -f1 /etc/passwd)
Pega todos usuários.....
E este outro, todos os nomes:
nomec=$(cut -d ":" -f5 /etc/passwd)
Use um filtro,
grep, awk ou sed
awk -F":" '/^user/' {print $1,$5}' /etc/passwd
______________________________________________________________________
Importante: echo -e "\n$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')\n"
Att.: Marcelo Oliver
______________________________________________________________________

3. awk

carlos eduardo da silva braga
cadu405

(usa Outra)

Enviado em 07/05/2020 - 20:51h

Boa noite!
não entendi como aplico o awk.

em relação ao código fiz um contador de linha com (cat /etc/passwd |wc -l) e também fiz uma única variável para login e nome completo:
lista=$(cat /etc/passwd | cut -d ":" -f1,5) no 1 mostra o login e no 5 o nome completo.



4. Re: Listar os usuários do sistema com laço FOR [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 07/05/2020 - 22:54h


cadu405 escreveu:

Boa noite!
não entendi como aplico o awk.

em relação ao código fiz um contador de linha com (cat /etc/passwd |wc -l) e também fiz uma única variável para login e nome completo:
lista=$(cat /etc/passwd | cut -d ":" -f1,5) no 1 mostra o login e no 5 o nome completo.

Boa noite Cadu.
Respondi no tópico anterior, apliquei o awk no seu script....


______________________________________________________________________
Importante: echo -e "\n$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')\n"
Att.: Marcelo Oliver
______________________________________________________________________






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts