13.18. Zapis pliku danych w formacie CSV

Problem

Chcemy przekształcić plik z danymi w plik formatu CSV (w którym poszczególne wartości są rozdzielane za pomocą znaku przecinka).

Rozwiązanie

Aby przekształcić dane do formatu CSV, wystarczy wykorzystać polecenie awk:

$ awk 'BEGIN { FS="\t"; OFS="\",\"" } { gsub(/"/, "\"\""); $1 = $1; printf "\"%s\"\n",
$0}' rozdzielone_tabulatorami
"Wiersz 1","Pole 1","Pole 2","Pole 3","Pole 4","Pole 5 ze ""znakami"" cudzysłowu"
"Wiersz 2","Pole 1","Pole 2","Pole 3","Pole 4","Pole 5 ze ""znakami"" cudzysłowu"
"Wiersz 3","Pole 1","Pole 2","Pole 3","Pole 4","Pole 5 ze ""znakami"" cudzysłowu"
"Wiersz 4","Pole 1","Pole 2","Pole 3","Pole 4","Pole 5 ze ""znakami"" cudzysłowu"

To samo zadanie można wykonać za pomocą skryptu ...

Get Bash. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.