Quella che segue è semplicemente una correzione alla risposta di @tripleee in
modo che rimuova tutte le virgolette dal campo finale proprio come fa per tutti gli altri campi.
Per mostrare ciò che viene corretto, di seguito è una risposta del tripleee , più una leggera modifica ai dati di esempio del PO con citazioni aggiunte attorno al campo finale " Z ".
echo 'A,,C,"D,E,F","G",I,"K,L,M","Z"' | sed -r -e 's/("([^"]*)")?,/\2\t/g'
A C D,E,F G I K,L,M "Z"
Puoi vedere che la ' Z ' è lasciata tra virgolette. Ciò è diverso da come vengono gestiti i campi interni. Ad esempio, la " G " non contiene virgolette.
Il comando seguente utilizza una seconda sostituzione per pulire la colonna finale:
echo 'A,,C,"D,E,F","G",I,"K,L,M","Z"' | sed -r -e 's/("([^"]*)")?,/\2\t/g' \
-e 's/\t"([^"]*)"$/\t\1/'
A C D,E,F G I K,L,M Z