shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Substituir campo de arquivo por outro campo de outro


From: SuSE List
Subject: Re: [shell-script] Substituir campo de arquivo por outro campo de outro arquivo
Date: Tue, 04 Jan 2005 09:40:41 -0200
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.2) Gecko/20040803

Bom dia Gentil,

Feliz Ano Novo!!!

Sua dica foi precisa!!!! Exatamente o que eu queria....eu acrescentei ao seu comando um awk para filtrar somente os usuarios validos (UID > 500), no meu caso, desprezando os usuários do sistema (root, sys, etc) e um grep para desconsiderar o "nobody - UID 65534", ficando assim:

msptst2:/home/vinicius # paste -d ':' <(sort /etc/passwd | cut -d ':' -f1) \
<(sort /etc/shadow | cut -d ':' -f2) <(sort /etc/passwd | cut -d ':' \
-f3,4,5,6,7,8,) | awk -F: '$3 > 499 { print $0 }' | grep -v nobody > 
/tmp/passwd.new

Show de bola, tenho de agradecer a todos da lista, pois com ela estou começando a amar o shell, muito bom mesmo, não sei se estou com o melhor shell, pois uso o bash (acho ele muito bom), andei estudando o Korn shell e mexendo um pouco com FreeBSD descobri que o shell padrao é o csh, instalei o bash pois achei o csh "meio seco"...bom mais é isso pessoal, obrigado a todos....

[]s

Vinicius

Gentil de Bortoli Júnior wrote:

Olá, Vinicius. Eu fiz aqui algo aproveitando a idéia que o Julio nos mostrou recentemente.

Veja se você compreende.

[root@gentil:~]# paste -d ':' <(sort /etc/passwd | cut -d ':' -f1) <(sort /etc/shadow | cut -d ':' -f2) <(sort /etc/passwd | cut -d ':' -f3,4,5,6,7,8,) > /tmp/passwd.new

O comando foi quebrado mas ele deve ser digitado em uma linha.

[]s
Gentil.

SuSE List wrote:
No linux temos o passwd, que possui seu campo senha com o caracter "x", por exemplo, e este mesmo arquivo esta ordenado por UIDs dos usuários....o segundo arquivo, shadow, possui o campo senha criptografado...porém não tem uma ordenação....é possivel substituir "corretamente" o campo senha, "x" pela senha criptografada do shadow do usuário correspondente e jogar isso em um terceiro aquivo (um passwd.new)?




reply via email to

[Prev in Thread] Current Thread [Next in Thread]