Cómo usar el comando sed en Linux

  
                

El comando sed en Linux se usa principalmente para el procesamiento de texto. Puede procesar las líneas y columnas de texto. Las siguientes series pequeñas le darán una introducción detallada al uso del comando sed en Linux. Los amigos interesados ​​pueden querer entenderlo.

formato de comando sed es:

sed [-nefri] y lsquo; Command ’ la introducción de texto

opciones comunes:

-n: Usa el modo silencioso. En el uso general de sed, todos los datos de STDIN generalmente se mostrarán en la pantalla. Sin embargo, si se agrega el parámetro -n, solo se mostrará la línea (o acción) que ha sido especialmente procesada por sed.

-e: Realice la edición de la acción sed directamente en el modo de línea de comandos;

-f: escriba directamente la acción sed en un archivo, -f nombre de archivo puede ejecutar dentro del nombre de archivo Sed action;

La acción de -r: sed admite la sintaxis de la notación regular extendida.
(El valor predeterminado es la sintaxis de notación regular básica)

-i: modifique directamente el contenido del archivo leído en lugar de que se muestre en la pantalla.

Comandos de uso común:

a: Nuevo, a puede ir seguido de una cadena, y estas cadenas aparecerán en una nueva línea (línea actual actual) ~

c: Sustituto, c puede ir seguido de una cadena, estas cadenas pueden reemplazar la línea entre n1, n2.

d: delete, porque se elimina, por lo que d generalmente no recoge ningún 咚咚;

i: insert, puedo ir seguido de una cadena, y estas cadenas serán nuevas Aparece la línea (actualmente la línea anterior);

p: imprime, y también imprime un elemento seleccionado. Por lo general, p funcionará con el parámetro sed -n ~

s: Reemplazar, ¡usted puede reemplazar directamente el trabajo! ¡Generalmente esta acción se puede combinar con una notación regular! Por ejemplo, 1,20s /old /new /g es! Ejemplo de


(asumiendo que tenemos un archivo llamado ab)

Eliminar una línea

[root @ localhost ruby] # sed ‘ 1d ’ ab # Eliminar la primera línea

[root @ localhost ruby] # sed ‘ $ d ’ ab # Elimina la última línea

[root @ localhost ruby] # sed ‘ 1,2d ’ ab # Elimina la primera línea Vaya a la segunda línea

[root @ localhost ruby] # sed ‘ 2, $ d ’ ab # Elimine la segunda línea hasta la última línea

Muestra una línea

. [root @ localhost ruby] # sed -n ‘ 1p ’ ab #Muestra la primera línea

[root @ localhost ruby] # sed -n ‘ $ p ’ ab #Muestra la última línea

[root @ localhost ruby] # sed -n ‘ 1,2p ’ ab # Muestra la primera línea a la segunda línea

[root @ localhost ruby] # sed -n ‘ 2, $ p ’ ab #Muestra la segunda línea a la última línea

Usa el modo para consultar

[root @ localhost ruby] # sed -n ‘ /ruby ​​/p ’ ab #Query, incluida la palabra clave ruby Todas las líneas

[root @ localhost ruby] # sed -n ‘ /\\ $ /p ’ ab #Query todas las líneas, incluida la palabra clave $, use backslashes \\ mask significado especial

Agregar una o más líneas de cadena

[root @ localhost ruby] # cat ab

¡Hola!

ruby ​​soy yo, bienvenido a mi blog.

fin

[root @ localhost ruby] # sed ‘ 1a beber té ’ ab # Agregar caracteres después de la primera línea Cadena " beber té "

¡Hola!

bebe té

ruby ​​soy yo, bienvenido a mi blog.

fin

[root @ localhost ruby] # sed ‘ 1,3a bebida Té ’ ab #Agregue la cadena después de la primera línea a la tercera línea " beber té "

¡Hola!

beber té

ruby ​​soy yo, bienvenido a mi blog.

beber té

terminar

beber té

[root @ localhost ruby] # sed ‘ 1a bebe té \\ ni café ’ ab # Agregue varias líneas después de la primera línea, use saltos de línea \\ n

¡Hola!

bebe té

o café

ruby ​​soy yo, bienvenido a mi blog.

fin

en lugar de una o más líneas < Br>

[root @ localhost ruby] # sed ‘ 1c Hola ’ ab #La primera línea se reemplaza por Hola

Hola

ruby ​​soy yo, bienvenido a mi blog.

end

[root @ localhost ruby] # sed ‘ 1,2c Hi ’ ab # La primera línea de la segunda línea en lugar de Hi

Hi

end

Reemplazar una parte de una línea

Formato: sed ‘ s /cadena a reemplazar /nueva cadena /g ’ (La cadena a reemplazar puede expresarse mediante una expresión regular式)

[root @ localhost ruby] # sed -n ‘ /ruby ​​/p ’ ab

Copyright © Conocimiento de Windows All Rights Reserved