Pessoal se puderem ajudar agradeço.

A situação é a seguinte:
considerem o arquivo teste.txt

r...@server#cat teste.txt
Login;Descricao do Grupo;Descricao do Login;Home;Shell
deivid;Grupo do Suporte;Deivid Vilela;/home/deivid;/bin/bash
r...@server#

Preciso usar este arquivo para criar usuários em lote.
um "for" resolveria perfeitamente se não fosse por um detalhe simples, eu não 
consigo trazer o conteúdo das colunas 2 e 3 com os espaços.
O "for" quebra isso em dados diferentes.

Vejam 

r...@server#cat teste.sh
#!/bin/bash

echo "------------------------------------------------"
echo "Saida do awk sem o for"
awk '{ split ($0, a, ";"); print a[2] }' teste.txt
echo "------------------------------------------------"
echo "Saida do awk quando armazenado na variavel \$conta"
for conta in $(awk '{ split ($0, a, ";"); print a[2] }' teste.txt)
        do
        echo $conta
        done
echo "------------------------------------------------"
r...@server#

Vejam a saída que esse script produz:
r...@server#./teste.sh
------------------------------------------------
Saida do awk sem o for
Descricao do Grupo
Grupo do Suporte
------------------------------------------------
Saida do awk quando armazenado na variavel $conta
Descricao
do
Grupo
Grupo
do
Suporte
------------------------------------------------
r...@server#

Se alguem conhecer uma forma de trazer o resultado com os espaços dentro do 
"for" serei muito grato ;-)




Responder a