Lan Yiyun: Introdução a algumas técnicas de comando Sed no Linux

No Linux, Sed (Stream Editor) é uma ferramenta de processamento de texto muito poderosa que permite realizar operações como substituir, excluir e inserir texto. Abaixo apresentarei algumas técnicas de comando Sed comumente usadas:

  1. Substituir texto: use  scomandos para substituir texto. Por exemplo, para substituir “antigo” por “novo” no texto, você pode usar o seguinte comando:

    sed 's/old/new/g' input.txt > output.txt

    Isso substituirá “antigo” em “input.txt” por “novo” e gerará o resultado em “output.txt”.

  2. Excluir linhas: use  do comando para excluir linhas especificadas. Por exemplo, para excluir linhas contendo uma string específica, você pode usar o seguinte comando:

    sed '/pattern/d' input.txt > output.txt

    Isso excluirá todas as linhas que contêm "pattern" em "input.txt" e gerará os resultados em "output.txt".

  3. Inserir linha: Use  io comando para inserir uma nova linha na posição especificada. Por exemplo, para inserir uma linha de texto antes da linha 3, você pode usar o seguinte comando:

    sed '3i\This is a new line.' input.txt > output.txt

    Isto irá inserir uma linha "Esta é uma nova linha." antes da linha 3 de "input.txt" e gerar o resultado em "output.txt".

  4. Imprimir linhas especificadas: use  -nparâmetros para imprimir apenas linhas que atendam às condições. Por exemplo, para imprimir linhas contendo uma string específica, você pode usar o seguinte comando:

    sed -n '/pattern/p' input.txt > output.txt

    Isso imprimirá todas as linhas contendo "pattern" em "input.txt" e enviará os resultados para "output.txt".

  5. Edição múltipla: você pode usar várias combinações de comandos para realizar edições múltiplas. Por exemplo, para primeiro excluir a linha que contém “foo” e depois substituir “bar” por “baz”, você usaria o seguinte comando:

    sed -e '/foo/d' -e 's/bar/baz/g' input.txt > output.txt

    Isso primeiro excluirá todas as linhas que contêm "foo" em "input.txt", depois substituirá "bar" por "baz" e gerará o resultado em "output.txt".

  6. Substituir delimitadores: os comandos Sed usam barras  /como delimitador padrão, mas isso pode causar confusão ao processar texto que contém barras. É possível usar outros caracteres como delimitadores, por exemplo usando  #como delimitador:

    sed 's#http://www.example.com#https://www.example.com#g' input.txt > output.txt

    Isso substituirá "http://www.example.com" em "input.txt" por "https://www.example.com" e gerará o resultado em "output.txt".

Acima estão algumas técnicas de comando Sed comumente usadas.Espero que ajude você a usar o Sed para processamento de texto no Linux. Lembre-se de ajustar e combinar comandos de acordo com a situação real para aproveitar as vantagens dos poderosos recursos de processamento de texto do Sed.

Supongo que te gusta

Origin blog.csdn.net/tiansyun/article/details/133387394
Recomendado
Clasificación