Linux - Ejemplo del comando sed

 
Vista:
Imágen de perfil de xve
Val: 311
Oro
Ha mantenido su posición en Linux (en relación al último mes)
Gráfica de Linux

Ejemplo del comando sed

Publicado por xve (837 intervenciones) el 04/08/2012 10:49:29
Hola a todos, aquí os adjunto una chuleta del comando sed para quien pueda necesitarlo.

sed Sed es un editor de texto que acepta como entrada un archivo, lo lee y modifica línea a línea mostrando el resultado en pantalla.
sed -i "s|buscar|remplazar|' archivo reemplaza la cadena "buscar" por "reemplazar" en el "archivo"
echo " la casa " | sed 's/^ *//' Elimina los caracteres del inicio
echo " la casa " | sed 's/* $//' Elimina los caracteres del final de la cadena
sed -i '1d' fichero.txt Modifica el archivo eliminando la primera linea

Si alguien sabe algo mas y quiere añadirlo...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 311
Oro
Ha mantenido su posición en Linux (en relación al último mes)
Gráfica de Linux

Ejemplo del comando sed

Publicado por xve (837 intervenciones) el 13/09/2012 11:40:18
Si queremos realizar modificaciones a varios archivos podremos hacerlo utilizando el comando find:
find . -type f -exec sed -i -e 's/pattern/replace/g' {} \; Reemplaza una cadena en muchos archivos
find . -type f -exec sed -i -e '/pattern/d' {} \; Elimina todas las lineas que coincidan con pattern

Si deseamos por ejemplo, que unicamente nos realice modificaciones en los archivos con extensión .txt seria algo así:
find . -type f -exec -name '*.txt' sed -i -e 's/pattern/replace/g' {} \; Reemplaza una cadena en muchos archivos
find . -type f -exec -name '*.txt' sed -i -e '/pattern/d' {} \; Elimina todas las lineas que coincidan con pattern
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 311
Oro
Ha mantenido su posición en Linux (en relación al último mes)
Gráfica de Linux

Eliminar el ultimo o últimos caracteres de un archivo

Publicado por xve (837 intervenciones) el 21/06/2013 07:45:16
Elimina el ultimo carácter de un archivo:
1
cat file.txt | sed '$s/.$//'

Elimina los dos últimos caracteres de un archivo:
1
cat file.txt | sed '$s/..$//'

Elimina los tres últimos caracteres de un archivo:
1
cat file.txt | sed '$s/...$//'
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 311
Oro
Ha mantenido su posición en Linux (en relación al último mes)
Gráfica de Linux

Eliminas los primeros caracteres de cada linea de un archivo

Publicado por xve (837 intervenciones) el 21/06/2013 07:48:13
Elimina el primera carácter de cada linea:
1
cat file.txt | sed 's/^.//'

Elimina los dos primeros caracteres de cada linea:
1
cat file.txt | sed 's/^..//'
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 311
Oro
Ha mantenido su posición en Linux (en relación al último mes)
Gráfica de Linux

Eliminas los ultimos caracteres de cada linea de un archivo

Publicado por xve (837 intervenciones) el 21/06/2013 07:50:44
Eliminamos el último carácter de cada linea:
1
cat file.txt | sed 's/.$//'

Eliminamos los últimos dos caracteres de cada linea:
1
cat file.txt | sed 's/..$//'
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 311
Oro
Ha mantenido su posición en Linux (en relación al último mes)
Gráfica de Linux

Eliminar el primer y ultimo carácter de cada linea de un archivo

Publicado por xve (837 intervenciones) el 21/06/2013 07:52:28
1
cat file.txt | sed 's/.$//;s/^.//'
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 311
Oro
Ha mantenido su posición en Linux (en relación al último mes)
Gráfica de Linux

Eliminar el último carácter de una linea en concreto de un archivo

Publicado por xve (837 intervenciones) el 19/05/2017 08:45:57
Si queremos eliminar el último carácter de la linea 5 seria así:
1
head -5 file.txt | tail -1 | sed 's/.$//'

Si queremos eliminar el último carácter de la linea 5 y 6 seria así:
1
head -5 file.txt | tail -2 | sed 's/.$//'
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Eliminar el último carácter de una linea en concreto de un archivo

Publicado por Pilar (3 intervenciones) el 20/11/2018 10:54:26
¿Y para reemplazar en un archivo una subcadena que viene con espacios por otra cosa? ¿Sabéis de algo?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar