[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Sustituir en base de datos de texto en bash



Buen día

Seria algo parecido a
      cat productos.db | awk -F\| '{if($1 eq 124564_78789888878){print
$1"|"$2"|pais"|$4} else {print $0;} }' > productos.db1
pero lo estoy haciendo de memoria, en caso de error consulta
      man awk

saludos

2015-06-30 16:46 GMT+00:00 Debia Linux <debianeromx@gmail.com>:
> Listeros:
>
> Buenos dias tengan todos ustedes.
>
> Tengo una base de datos en un archivo de texto que manejo en bash
> (solo he podido ingresar los datos con un script sencillo mediante
> comando echo y read).
>
> La estructura del la base de datos (productos.db) es:
>
> CODIGO PRODUCTO|NOMBRE DE PRODUCTO|PAIS ORIGEN|DESCRIPCION|
> 124564_78789888878|CALCULADORA||CALCULADORA DIGITAL CON 15 DIGITOS|
>
> Como podran ver en la columna 3 (pais de origen no existe pais de
> origen esta en "blanco" (por decirlo de alguna manera.
>
> ¿Como puedo hacerle mediante algun comando para ingresar el nombre del
> pais (ya que en su momento no sabiamos el pais donde se mando a hacer)
> justamente en la columna tres.
>
> mediante egrep puedo aislar la linea de este producto (porque son
> muchos productos con un codigo diferente.
>
> egrep 124564_78789888878 productos.db > tmp0
>
>
> Ya tengo aislada la linea y ahora ¿Cómo le hago?. Podria yo usar tal
> vez awk pero no se como funcionaria.
>
> Gracias por su ayuda.
>
> Debianeromx
>
>
> --
> To UNSUBSCRIBE, email to debian-user-spanish-REQUEST@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
> Archive: https://lists.debian.org/CAM50uNyPycaFUthnzwrRftFuiKgXmDLYML0S+qw8LtvgCT5g@mail.gmail.com
>



-- 
"Cada cual según sus fuerzas, cada quien según sus necesidades..."


Reply to: