Linux - Ejemplo del comando sed

   
Vista:
Imágen de perfil de xve

Ejemplo del comando sed

Publicado por xve (663 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

Ejemplo del comando sed

Publicado por xve (663 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

Eliminar el ultimo o últimos caracteres de un archivo

Publicado por xve (663 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

Eliminas los primeros caracteres de cada linea de un archivo

Publicado por xve (663 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

Eliminas los ultimos caracteres de cada linea de un archivo

Publicado por xve (663 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

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

Publicado por xve (663 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