GNU/Linux >> Tutoriales Linux >  >> Linux

Filtre un archivo .CSV según los valores de la quinta columna de un archivo e imprima esos registros en un nuevo archivo

awk -F '","'  'BEGIN {OFS=","} { if (toupper($5) == "STRING 1")  print }' file1.csv > file2.csv 

Salida

"12310","42324564756","a simple string with a , comma","string with or, without commas","string 1","USD","12","70%","08/01/2013",""
"23525","74535243123","string , with commas, and - hypens and: semicolans","string with or, without commas","string 1","CAND","744","70%","05/06/2013",""

Creo que esto es lo que quieres.


El problema con CSV es que no hay un estándar. Si necesita lidiar con datos con formato CSV a menudo, es posible que desee buscar un método más sólido en lugar de simplemente usar "," como su separador de campo. En este caso, Text::CSV de Perl Los módulos CPAN se adaptan excepcionalmente bien al trabajo:

$ perl -mText::CSV_XS -WlanE '
    BEGIN {our $csv = Text::CSV_XS->new;} 
    $csv->parse($_); 
    my @fields = $csv->fields(); 
    print if $fields[4] =~ /string 1/i;
' file1.csv
"12310","42324564756","a simple string with a , comma","string with or, without commas","string 1","USD","12","70%","08/01/2013",""
"23525","74535243123","string , with commas, and - hypens and: semicolans","string with or, without commas","string 1","CAND","744","70%","05/06/2013",""

Linux
  1. Salida a Stdout y al mismo tiempo Grep en un archivo?

  2. ¿La diferencia entre enlaces simbólicos y duros?

  3. ¿Tomar la primera columna de 2 archivos y escribirla en un tercer archivo?

  4. ¿Redireccionamiento de Io y el comando principal?

  5. ¿Imprimir el contenido de una estructura de directorio (sistema de archivos) en CSV en la línea de comandos?

Cómo usar Sudo y el archivo Sudoers

Cómo guardar un archivo en Vim/Vi y salir del editor

¿Cómo encontrar el tipo de archivo Img y montarlo?

¿Eliminar líneas consecutivas en Csv con valores duplicados en un campo, pero conservar la última línea?

¿Cómo imprimo los valores ASCII (numéricos) de cada carácter en un archivo?

Cambiar el orden de las líneas en un archivo