Estrarre righe e metterle in colonne

Come estrarre delle righe da un lungo testo e sistemarle in colonne diverse.

A cura di Totò Fiandaca  | issue #234 | guida/e Andrea Borruso


Caso d’uso

File testuale (il file è il risultato del comando ogrinfo -al -so DBGT_10K_22_V01.gdb) con migliaia di righe, come estrarre le sole righe che iniziano con

  • Layer name
  • Feature count
  • Geometry e creare un file csv con la seguente struttura:
layer_name feature_count geometry
pippo 123 None
pluto 12345 3D Multi Polygon

Soluzione con Miller

# estrai soltanto le righe che servono e le righe bianche
<cucu_dbgt.csv grep -P '^(Layer na.+|Geometry:.+|Feature Count:.+|.{0,1})$' | \
# converti output in CSV
mlr --x2c --ips : clean-whitespace >cucu_dbgt_a.csv

Il comando miller:

  • --x2c, per fissare come formato di input l’XTAB e come output il CSV
  • --ips :, per fissare come separatore di coppie chiave valore, in input, i :
  • clean-whitespace, per rimuovere spazi ridondanti.

ottimo risultato:

Riferimenti utili

Ultima modifica 15/01/2023: add ricetta da righe in colonne (8d3bf55)