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

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

Re: [shell-script] Como fazer?


From: Juliano Garcia Martinez
Subject: Re: [shell-script] Como fazer?
Date: Fri, 14 Jan 2005 18:00:24 -0200 (BRST)
User-agent: mandic:webmail/NEO - Mozilla/4.0 (compatible; MSIE 6.0; X11; Linux i686) Opera 7.54 [en]

Caro o jeito que achie mais simples foi o seguinte:

Seu arquivo de user e nomes tem a forma:

fulano:Fulano da Silva
ciclano:Ciclano da Silva
beltrano:Beltrano da Silva

Entao na primeira linha mudo ele pra ficar assim

fulano:Fulano#da#Silva
ciclano:Ciclano#da#Silva
beltrano:Beltrano#da#Silva

Por que nao importa quantos nomes tenham se forem divididos por espaco ele
vai trocar por #

Depois separo o nome do user com sed + awk
e o nome eh o mesmo proscedo do user so que pegamos a variavel $2 do awk e
tiramoss as # assim o Nome fica normal novamente e jogamos as saidas ja no
comando.

#!/bin/bash
for i in `cat base.txt | sed 's/ /#/g' `; do
  usuario=`echo $i | sed 's/:/ /g' | awk -F' ' '{print $1}'`
  nome=`echo $i | sed 's/:/ /g' | awk -F' ' '{print $2}' | sed 's/#/ /g'`
        echo "Criando o usuário : $usuario"
        echo "Nome : $nome"
        pw useradd $usuario -g mail -s /sbin/nologin -C $nome
done


[]'s
Juliano



---- Mensagem Original ----
From: André Luiz <address@hidden>
To: address@hidden
Sent: Sex, Janeiro 14, 2005 4:09 pm
Subject: [shell-script] Como fazer?


Boa tarde galera,

mais uma vez venho recorrer a ajuda de vocês aqui para algum problema que
pode até ser simples mas que eu naum to conseguindo resolver.

Seguinte, criei um arquivo chamado base.txt ele está nesse formato.

fulano:Fulano da Silva
ciclano:Ciclano da Silva
beltrano:Beltrano da Silva

Isso aí que eu to fazendo é pra automatizar um script para criar todos
usuários de um servidor automaticamente.

to fazendo o seguinte script:

#!/bin/sh
for i in `cat /tmp/base.txt |cut -d: -f1`;do
pw useradd $i -g mail -s /sbin/nologin
done

bom até aí tudo certo, o problema é que eu queria nesse mesmo script jah
definir também o nome completo do cidadão, então teria que fazer um for
pra
pegar também o nome do cara, ele faria isso:
pw useradd fulano -g mail -s /sbin/nologin -c Fulano da Silva

o que acontece é que eu naum to conseguindo fazer isso, pois só to
conseguindo pegar 1 dos dois...

To recorrendo a ajuda por isso... alguém sabe como fazer para pegar os dois
campos ou até mais que possam surgir? eu acredito que em ambos tem que usar
o for, mas to aceitando qualquer tipo de sugestão

Obrigado a todos!






--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 265.6.11 - Release Date: 12/01/2005



---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como
perl, C etc. Quem insistir em não seguir esta regra será moderado sem
prévio aviso.
---------------------------------------------------------------------
Sair da lista: address@hidden
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------

Links do Yahoo! Grupos














reply via email to

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