Reordeno y quoteo bien para que el thread sea seguible (por favor, traten
de quotear bien y eviten el top-posting, más info en [1]).

[1] http://www.lugmen.org.ar/servicios/listas/consejos/

Leandro Ferrigno, el 26 de abril a las 11:40 me escribiste:
>>   2008/4/25 Victor Del Rio <[EMAIL PROTECTED]>:
>>
>>     Buenas, lo que quiero hacer con el sed es insertar una determinada
>>     cantidad de ceros pasada como parametro a un numero, intente lo sig:
>>
>>     sed 's/\(^.*$\)/0\{$1\}\1/'
>
>    estas pifiandole con las / el sed seria sed 's/cadena a buscar/reemplazo/'
>    ademas si queres reemplazarlo todas las veces que aparece tenes que
>    agregarle la opcion g al final

Me parece que lo que él quiere es que algo así:
293
sea reemplazado por algo como:
000293
si $1 es 3.

AFAIK, eso no lo podés hacer con sed, pero si matcheas toda la línea, esto
ya te lo soluciona (deben haber formas más simples aun):
(for i in `seq $1`; do echo -n 0; done; cat)

Por ejemplo:
$ echo 293 | (for i in `seq $1`; do echo -n 0; done; cat)
000293

Si los número tienen una cantidad de dígitos fija (por ejemplo 3), una
forma más simple es:
printf "%0$(($1+3))d\n"

Por ejemplo:
$ printf "%0$(($1+3))d\n" 293
000293

-- 
Leandro Lucarella (luca) | Blog colectivo: http://www.mazziblog.com.ar/blog/
----------------------------------------------------------------------------
GPG Key: 5F5A8D05 (F8CD F9A7 BF00 5431 4145  104C 949E BFB6 5F5A 8D05)
----------------------------------------------------------------------------
Hey you, would you help me to carry the stone?
Open your heart, I'm coming home.
_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion

Responder a