Añadir una linea en blanco cada cuatro lineas

Resuelto/Cerrado
markos - 8 oct 2011 a las 00:55
 Markos - 10 oct 2011 a las 23:49
Hola,

Necesito añadir a un texto una linea en blanco cada cuatro lineas, usando bash. Por favor alguien puede ayudarme?

Gracias



3 respuestas

zipe31
Message postés
36324
Date d'inscription
domingo, 7 de noviembre de 2010
Estatus
Contribuidor
Última intervención
miércoles, 27 de enero de 2021
2
8 oct 2011 a las 11:06
Hola,

$ cat fich 
ligne 1
ligne 2
ligne 3
ligne 4
ligne 5
ligne 6
ligne 7
ligne 8
ligne 9
ligne 10
ligne 11
ligne 12
ligne 13
ligne 14

$ sed -i.bak '0~4 a\

' fich
$ cat fich 
ligne 1
ligne 2
ligne 3
ligne 4

ligne 5
ligne 6
ligne 7
ligne 8

ligne 9
ligne 10
ligne 11
ligne 12

ligne 13
ligne 14

$

;-))
3
Muchas gracias zipe31, funciona bien :)

Si no es mucha molestia, como haría para insertar unha línea en blanco después del signo >. No consigo que funcione con la instrución sed '/.\{80\}/!{/\>$/G;}' fichero
aunque si con otros signos como ? : sed '/.\{80\}/!{/\?$/G;}' fichero

Gracias por adelantado.
1
zipe31
Message postés
36324
Date d'inscription
domingo, 7 de noviembre de 2010
Estatus
Contribuidor
Última intervención
miércoles, 27 de enero de 2021
2
10 oct 2011 a las 19:11
Hola,

Tienes uno ejemplo ANTES => DESPUES de lo que quieres por favor ?
0
Hola zipe31
Tengo un texto en que algunas líneas acaban en el caracter ">" y necesito que todas estas líneas vayan seguidas de una línea en blanco, consigo hacerlo con caracteres como "?" p.e: sed '/.\{120\}/!{/\?$/G;}' fich > fich2 pero no con este caracter en concreto.
0
zipe31
Message postés
36324
Date d'inscription
domingo, 7 de noviembre de 2010
Estatus
Contribuidor
Última intervención
miércoles, 27 de enero de 2021
2
10 oct 2011 a las 23:05
$ cat fich 
ligne 1>
ligne 2
>ligne 3
ligne 4>
>ligne 5

$ sed '/.\{80\}/!{/>$/G;}' fich 
ligne 1>

ligne 2
>ligne 3
ligne 4>

>ligne 5
0
Perfecto zipe31, eso era lo que buscaba. Muchas gracias !!
0
------
0