Leitura de arquivo CSV com shell [RESOLVIDO]

1. Leitura de arquivo CSV com shell [RESOLVIDO]

TzTKAL
rodrigoepfonseca

(usa Linux Mint)

Enviado em 14/03/2018 - 20:52h

Boa noite!
Sou iniciante em shell e estou com um problema, tenho um programa que gera um CSV com coluna ID, NomeJob, preciso abrir esse aquivo ler o que tem nele com um shell script e colocar um if com as condições encontradas nele. O problema é que não sei como abrir um CSV e muito menos informa o que quero ser lido, alguém poderia dar um exemplo de código ou onde leio algo a respeito.
Obs o CSV já vem estruturado.
Ambiente: Linux


  


2. Re: Leitura de arquivo CSV com shell [RESOLVIDO]

Matheus
pylm

(usa Gentoo)

Enviado em 14/03/2018 - 21:03h

cat pra mostrar o conteúdo do arquivo
grep pra filtrar uma informação
cut pra cortar informação do output de algum dos outros dois acima.
awk pra magia negra

Dá um exemplo do que você precisa filtrar e certamente alguém vira com uma solução.


3. Re: Leitura de arquivo CSV com shell [RESOLVIDO]

Hugo Cerqueira
hrcerq

(usa Outra)

Enviado em 15/03/2018 - 15:54h

Olá.

Para esclarecimento, você pode abrir o arquivo CSV do mesmo jeito que abre qualquer arquivo de texto. Basicamente é um arquivo de texto. Porém, ao contrário da maioria dos arquivos de texto simples, o CSV tem uma estrutura de delimitação dos campos por vírgulas. Isso permite que ele seja visualizado por algumas ferramentas como o Excel e o Calc, que interpretam a estrutura e separam os valores em células.

O shell está cheio de utilitários que você pode usar para trabalhar com arquivos CSV. Saber quais usar depende muito da sua necessidade. Muitas vezes poderá escolher entre um ou outro, e com frequência vai achar conveniente combinar esses utilitários. Sequências de cat e grep, por exemplo são bastante comuns. Para substituições de um determinado padrão de caracteres pode usar sed ou awk.

Aliás, awk pode ser usado pra muitas coisas e facilmente consegue substiuir a combinação de várias ferramentas juntas. Se for trabalhar com frequência com arquivos de texto (estruturado ou não), aconselho conhecer essa linguagem. Conforme disse o colega acima, awk faz magia negra.

---

Atenciosamente,
Hugo Cerqueira


4. resposta

TzTKAL
rodrigoepfonseca

(usa Linux Mint)

Enviado em 15/03/2018 - 16:53h

hrcerq escreveu:

Olá.

Para esclarecimento, você pode abrir o arquivo CSV do mesmo jeito que abre qualquer arquivo de texto. Basicamente é um arquivo de texto. Porém, ao contrário da maioria dos arquivos de texto simples, o CSV tem uma estrutura de delimitação dos campos por vírgulas. Isso permite que ele seja visualizado por algumas ferramentas como o Excel e o Calc, que interpretam a estrutura e separam os valores em células.

O shell está cheio de utilitários que você pode usar para trabalhar com arquivos CSV. Saber quais usar depende muito da sua necessidade. Muitas vezes poderá escolher entre um ou outro, e com frequência vai achar conveniente combinar esses utilitários. Sequências de cat e grep, por exemplo são bastante comuns. Para substituições de um determinado padrão de caracteres pode usar sed ou awk.

Aliás, awk pode ser usado pra muitas coisas e facilmente consegue substiuir a combinação de várias ferramentas juntas. Se for trabalhar com frequência com arquivos de texto (estruturado ou não), aconselho conhecer essa linguagem. Conforme disse o colega acima, awk faz magia negra.

---

Atenciosamente,
Hugo Cerqueira



Muito obrigado pela respota e o script já está em andamento.
há mais uma coisa, aqui é o Rodrigo da CDS.








Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts