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

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

Re: [shell-script] Validar se existe um usuário ...


From: jaugusto
Subject: Re: [shell-script] Validar se existe um usuário ...
Date: Tue, 21 Aug 2001 15:56:15 -0300

Pessoal
     Observando a resposta do Daniel, me lembrei de uma dica que diminui o
tempo de execução de qualquer script, porque não é criado um processo a
mais no UNIX.

     A dica é a seguinte:

Em lugar de um comando no formato

cat arquivo | cut -f x -dy

É muito mais rápido

cut -f x -d y arquivo

pois o comando cut pode ler de um arquivo e não é necessário mostrar o
arquivo via cat, liga-lo com o pipe com o cut para cortar alguma informação
do mesmo.

A primeira forma do comando, com pipe, deve ser usada somente se for
necessário "cortar" o resultado de algum comando e nao de um único arquivo.

Agora em relação ao script proposto poderiamos substituir o primeiro if
pelo seguinte comando com a mesma funcionalidade

if grep -q   "^$1:"    /etc/passwd; then

A opção -q do grep simplesmente indica no Returno Code se o texto procurado
existe ou não no arquivo. O texto procurado utiliza expressão regular, onde
'^' significa o inicio da linha, seguido do nome do usuario procurado '$1'
seguido do separador ':'.

Abraços a todos

José Augusto Martins Nieviadonski
HSBC Bank Brasil - Banco Múltiplo
Treinamento de Informática



                      
                      
                      
                      
                      
                      
                      


 Enviado Por : Daniel Duclos <address@hidden> - 21/08/01 15:37
        Responder a shell-script

 Para:  <address@hidden>
 cc:    (cco: Jose NIEVIADONSKI/HBBR/HSBC)
 Assunto: Re: [shell-script] Validar se existe um usuário ...


On Tue, 21 Aug 2001, Pedro Henrique Ponchio wrote:

> Olá galera,
>
> Precisava de alguma dica sobre como validar se existe determinado
> usuário passado num argumento ...
>
> Verificar se foi escrito corretamente o nome do usuário e só continuar a
> execução do programa se estiver correto ...


#!/bin/bash
if [ "`cat /etc/passwd | cut -d: -f1 | grep $1`" = "" ]; then
        echo "usuario nao existe"
else
        echo "usuario existe"
fi

Claro, substitua os echos por qualquer acao que quiser... crie funcoes pra
ficar mais legivel e tal... acho q eh por ai...

qualquer coisa, masnde mais dicas...

;)

Daniel Lobato Duclos - address@hidden - http://www.cybershark.net
---------------------------------------------------------------------------
Stand for something, or you will fall for nothing.
(http://www.gnu.org/philosophy/pragmatic.html)



Sair da lista: address@hidden
Banco Dados:   http://www.egroups.com/group/shell-script

Seu uso do Yahoo! Groups é sujeito às regras descritas em:
http://docs.yahoo.com/info/terms/








This message and any attachments are confidential to the ordinary user of
the e-mail address to which it was addressed and may also be privileged. If
you are not the adressee you may not copy, forward, disclose or use any
part of the message or its attachments and if you have received this
message in error, please notify the sender immediately by return e-mail and
delete it from your system.
Internet communications cannot be guaranteed to be secure or error-free as
information could be intercepted, corrupted, lost, arrive late or contain
viruses. The sender therefore does not accept liability for any errors or
omissions in the context of this message which arise as a result of
Internet transmission.



reply via email to

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