Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    91

    Script Shell Bash: da un file a tanti file. come?

    CIao ragazzi
    ho un file csv enorme così composto

    Coordinata1,Coordinata2,Valore
    11111,a1,65
    11111,a2,32
    22222,b1,39
    22222,b3,55
    33333,c5,12
    33333,c9,16



    e così via
    Questo file ha una particolarità, ad un certo punto le coordinate si ripetono cambia solo il campo VALORE
    ESEMPIO
    11111,a1,65
    11111,a2,32
    22222,b1,39
    22222,b3,55
    33333,c5,12
    33333,c9,16
    .....
    11111,a1,45
    11111,a2,56
    22222,b1,89
    22222,b3,45
    33333,c5,56
    33333,c9,45
    .....
    11111,a1,55
    11111,a2,56
    22222,b1,89
    22222,b3,89
    33333,c5,78
    33333,c9,46
    .....


    vorrei spezzare questo megafile in tanti piccoli file .
    Il problema mio è che vorrei creare tanti piccoli file quante volte si ripetono i blocchi
    così che ogni singolo file abbia solo un blocco di coordinate e valori

    il tutto con script shell...
    avete idee?graz
    "La sapienza è figliola dell'esperienza"
    Leonardo Da Vinci
    www.datameteo.com

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    91
    SEMPLIFICO

    il file sorgente ora è così composto

    Coordinata1,Coordinata2,ValoreA
    11111,a1,65
    11111,a2,32
    22222,b1,39
    22222,b3,55
    33333,c5,12
    33333,c9,16
    Coordinata1,Coordinata2,ValoreB
    11111,a1,65
    11111,a2,32
    22222,b1,39
    22222,b3,55
    33333,c5,12
    33333,c9,16
    Coordinata1,Coordinata2,ValoreC
    11111,a1,65
    11111,a2,32
    22222,b1,39
    22222,b3,55
    33333,c5,12
    33333,c9,16


    vorrei in questo caso fare uno script per spezzare questo file in 3 files distinti, ognuno contenente u solo blocco Valore
    es. file 1
    Coordinata1,Coordinata2,ValoreA
    11111,a1,65
    11111,a2,32
    22222,b1,39
    22222,b3,55
    33333,c5,12
    33333,c9,16
    "La sapienza è figliola dell'esperienza"
    Leonardo Da Vinci
    www.datameteo.com

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    91
    grazie al prezioso aiuto di un certo MARK
    ecco la risposta

    $ awk '/Coordinata1,Coordinata2,Valore?/{n++}{print > n "file.txt" }' filesorgente.txt

    risultato
    tanti nfile.txt quanti sono le volte che è riportata la riga Coordinata,......
    "La sapienza è figliola dell'esperienza"
    Leonardo Da Vinci
    www.datameteo.com

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.