Me gustaría saber qué patrón puedo usar en sed para hacer cambios en la primera línea de archivos de gran tamaño (~ 2 GB). La preferencia por sed es solo porque supongo que debe ser más rápido que un script de Python o Perl.¿Cómo puedo hacer cambios solo en la primera línea de un archivo?
Los archivos tienen la siguiente estructura:
field 1, field 2, ... field n
data
y, dada la probabilidad de tener espacios en el identificador para cada campo, tengo que sustituir cada espacio por un guión de esta manera:
**BEFORE**
the first name,the second name,the first surname,a nickname, ...
data
**AFTER**
the_first_name,the_second_name,the_first_surname,a_nickname, ...
data
Cualquier puntero al patrón correcto para usar u otra solución de guiones sería genial.
Eso requiere una 'g' en el extremo para que reemplace todos los espacios en la línea, no solo el primero. –
perl -i -pe 's// _/g si 1 .. 10' ??? Vaya, nunca escuché esta sintaxis en "si 1..10". A veces me molesta un poco con Perl. ¿Por qué todas estas excepciones? ¿Por qué no usar simplemente un simple if ($. <11)? – Frank
@leon: wow, truco muy bueno !, gracias. –