[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Problema com script envolvendo SED e TR
From: |
Tiago Barcellos Peczenyj |
Subject: |
Re: [shell-script] Problema com script envolvendo SED e TR |
Date: |
Wed, 18 Oct 2006 15:12:38 -0300 |
Ola
a)vc pode usar 2 tr's
$ head -n 1 xxx | tr -d \" | tr ',' '\n'
b) 1 sed , mais elegante
$ head -n 1 xxx | sed ';s/"//g;s/,/\n/g'
c) 1 awk de 2 formas
$ awk -F\" '(NR == X){gsub(/\"/,""); gsub(/\,/,"\n"); print }' X=1 xxx
$ awk '(NR == X){gsub(/\"/,""); split($0,all,","); for(i in all) print
all[i]}' X=1 xxx
ah sim, chamo xxx o nome do seu arquivo.
On 10/18/06, Fabio Costa <address@hidden> wrote:
Olá!
Tiago Barcellos Peczenyj escreveu:
> qual a finalidade do segundo sed ?
Ele limpa as aspas do CSV, apenas isso.
> vc não poderia usar AWK passando o separador de campos como sendo a virgula?
Não fiz nenhum teste, mas poderia tentar.
Aproveitando, vou passar o script em questão, pois percebi que a lista
não aceita anexos:
#!/bin/bash
if [ "$#" -lt 1 ]
then
echo "take_value.sh"
echo
echo "SINTAXE: take_value [CSV]"
exit 1
fi
all_params=`head -n 1 $1 | sed 's/,/\n/g' | sed 's/"//g'`
for i in $all_params; do
echo "$i"
done
E o teste anteriormente mencionado foi feito com o seguinte arquivo de teste
"teste de linha","outro teste de linha","mais um teste de linha"
--
Obrigado!
Fábio Emilio Costa Analista de Software Básico I
SERPRO - Serviço Federal de Processamento de Dados
Performance - Ambiente Distribuído SUPCD/CDGTI/CDGS1
email: address@hidden Notes:fabioc
Ramal: (#11) 1513
"Esta mensagem do SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO), empresa
pública federal regida pelo disposto na Lei Federal nº 5.615, é enviada exclusivamente a
seu destinatário e pode conter informações confidenciais, protegidas por sigilo
profissional. Sua utilização desautorizada é ilegal e sujeita o infrator às penas da lei.
Se você a recebeu indevidamente, queira, por gentileza, reenviá-la ao emitente,
esclarecendo o equívoco."
"This message from SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO) -- a
government company established under Brazilian law (5.615/70) -- is directed exclusively
to its addressee and may contain confidential data, protected under professional secrecy
rules. Its unauthorized use is illegal and may subject the transgressor to the law's
penalties. If you're not the addressee, please send it back, elucidating the
failure."
---------------------------------------------------------------------
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
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil
Links do Yahoo! Grupos
--
Tiago B Peczenyj
Linux User #405772
# cd /pub
# more beer