Fish Shell:
Trabalhando com CSV
Como fazer:
O Fish Shell, por si só, não possui funções embutidas especificamente projetadas para a manipulação de CSV. No entanto, você pode aproveitar utilitários Unix como awk, sed e cut para operações básicas ou usar ferramentas especializadas como csvkit para tarefas mais avançadas.
Lendo um arquivo CSV e imprimindo a primeira coluna:
Usando cut para extrair a primeira coluna:
cut -d ',' -f1 data.csvSaída de exemplo:
Nome
Alice
BobFiltrando linhas CSV baseadas no valor da coluna:
Usando awk para encontrar linhas onde a segunda coluna corresponde a “42”:
awk -F, '$2 == "42" { print $0 }' data.csvSaída de exemplo:
Bob,42,LondresModificando um arquivo CSV (por exemplo, adicionando uma coluna):
Usando awk para adicionar uma coluna com um valor estático “NovaColuna”:
awk -F, 'BEGIN {OFS=","} {print $0,"NovaColuna"}' data.csv > modified.csvSaída de exemplo em modified.csv:
Nome,Idade,Cidade,NovaColuna
Alice,30,Nova Iorque,NovaColuna
Bob,42,Londres,NovaColunaUsando csvkit para operações mais avançadas:
Primeiro, certifique-se de ter o csvkit instalado. Caso não, instale-o usando pip: pip install csvkit.
Convertendo um arquivo CSV para JSON:
csvjson data.csv > data.jsonSaída de exemplo em data.json:
[{"Nome":"Alice","Idade":"30","Cidade":"Nova Iorque"},{"Nome":"Bob","Idade":"42","Cidade":"Londres"}]Filtrando com csvgrep do csvkit:
csvgrep -c 2 -m 42 data.csvEste comando replica a tarefa de filtragem, mas usando csvkit, visando a coluna 2 pelo valor “42”.
Em conclusão, embora o Fish Shell em si possa não oferecer capacidades diretas de manipulação de CSV, sua integração perfeita com utilitários Unix e a disponibilidade de ferramentas como csvkit fornecem opções poderosas para trabalhar com arquivos CSV.