Articles

50 exemplos de comandos` sed`

Posted by admin

` sed ‘ é uma funcionalidade útil de processamento de texto do GNU/Linux. A forma completa de ‘ sed ‘ é o editor de Stream. Muitos tipos de tarefas simples e complicadas de processamento de texto podem ser feitas muito facilmente usando o comando `sed`. Qualquer texto em particular num texto ou num ficheiro pode ser pesquisado, substituído e eliminado usando a expressão regular com o comando sed. Mas esses comandos realizam todos os tipos de modificação temporariamente e o conteúdo original do arquivo não é alterado por padrão. O usuário pode armazenar o conteúdo modificado em outro arquivo, se necessário., Os usos básicos do comando` sed ‘ são explicados neste tutorial usando 50 exemplos únicos.

Antes de iniciar este tutorial, deve verificar a versão instalada de `sed` no seu sistema operativo, executando o seguinte comando. O tutorial é projetado com base no GNU sed. Então esta versão de `sed` será necessária para praticar os exemplos mostrados neste tutorial.

$ sed –version

a seguinte saída mostra que o GNU Sed da versão 4.4 está instalado no sistema.,

Sintaxe:

sed …

Se nenhum nome de arquivo é fornecido com o `sed` comando e, em seguida, o script funcionará no padrão de entrada de dados. O script ‘ sed ‘ pode ser executado sem qualquer opção.,cter

  • Truncar todas as linhas para os primeiros 80 caracteres
  • Procurar por uma string regex e acrescentar algum padrão de texto depois de
  • Procurar por uma string regex e uma segunda cópia da cadeia depois de
  • Execução de multi-linha `sed` scripts a partir de um ficheiro
  • Corresponder a um multi-padrão de linha e substitua com o novo multi-linha de texto
  • Substituir, a fim de duas palavras que correspondem a um padrão
  • Usar várias sed comandos a partir da linha de comando
  • Combinar sed com outros comandos
  • Insere uma linha vazia em um arquivo
  • Excluir todos os caracteres alfa-numéricos a partir de cada linha de um arquivo.,
  • Use ‘&’ para corresponder à string
  • Opção par de palavras
  • Maiúscula o primeiro caractere de cada palavra
  • Imprimir os números de linha do arquivo
  • texto Básico de substituição usando o ‘sed’

    Em alguma parte específica de um texto pode ser pesquisado e substituído por utilizar a pesquisa e a substituição de padrão usando o `sed` comando. No exemplo seguinte,’ s ‘ indica a tarefa de pesquisa e substituição. A palavra ‘Bash’ será procurada no texto, “Bash Scripting Language” e se a palavra existir no texto, então será substituída pela palavra ‘Perl’.,

    $ echo “Bash Scripting Language” | sed ‘s/Bash/Perl/’

    Saída:

    A palavra, ‘Bash’ existe no texto. Então a saída é ‘Linguagem de programação Perl’.

    sed`command can be used to substitution any part of a file content also. Crie um ficheiro de texto chamado weekday.txt com o seguinte conteúdo.dia da semana.,txt

    Monday
    Tuesday
    Wednesday
    Thursday
    Friday
    Saturday
    Sunday

    O comando a seguir irá procurar e substituir texto ‘domingo ‘, pelo texto ‘domingo é feriado”.

    $ cat weekday.txt
    $ sed ‘s/Sunday / Sunday is holiday /’ weekday.txt

    saída:

    ‘domingo’ existe no dia da semana.txt file e esta palavra é substituída pelo texto, “Sunday is holiday” depois de executar o comando `sed` acima.,

    Go to top

    Replace todas as instâncias de um texto numa determinada linha de um ficheiro usando a opção ‘g’

    ‘g’ é usada no comando `sed` para substituir todas as ocorrências de padrão correspondente. Criar um ficheiro de texto chamado python.txt com o seguinte conteúdo para saber o uso da opção ‘g’. Este ficheiro contém a palavra. ‘Python’ várias vezes.

    python.txt

    Python é uma linguagem muito popular.
    Python é fácil de usar. Python é fácil de aprender.,
    Python é uma linguagem de plataforma cruzada

    O seguinte comando irá substituir todas as ocorrências de ‘Python’ na segunda linha do ficheiro, python.txt. Aqui, ‘Python’ ocorre duas vezes na segunda linha.

    $ cat python.txt
    $ sed ‘2 s/Python/perl/g’ python.txt

    Saída:

    a seguinte saída irá aparecer após a execução do programa. Aqui, toda a ocorrência de “Python” na segunda linha é substituída por “Perl”.,

    Ir para o topo

    Substitua a segunda ocorrência apenas de uma partida em cada linha

    Se qualquer palavra aparece várias vezes em um arquivo, em seguida, a determinada ocorrência da palavra em cada linha pode ser substituído usando o `sed` comando com o número de ocorrência. O seguinte comando ‘ sed ‘ irá substituir a segunda ocorrência do padrão de procura em cada linha do ficheiro, python.txt.

    $ sed ‘s/Python/perl / g2’ python.txt

    Saída:

    a seguinte saída irá aparecer após executar o comando acima., Aqui, o texto de procura, “Python”, aparece duas vezes apenas na segunda linha e é substituído pelo texto, “Perl”.

    ir para o topo

    substituir a última ocorrência apenas de uma correspondência em cada linha

    criar um ficheiro de texto chamado lang.txt com o seguinte conteúdo.lang.txt

    Bash Programming Language. Linguagem De Programação Python. Linguagem De Programação Perl.
    Hypertext Markup Language.Extensible Markup Language.

    $ sed ‘s/\(.* \ ) Programação/ \ 1cripting / ‘ lang.,txt

    Ir para o topo

    Substituir o primeiro jogo em um arquivo com novo texto

    O seguinte comando irá substituir apenas a primeira partida da pesquisa padrão, ‘Python’, pelo texto, ‘perl’. Aqui, ‘ 1 ‘ é usado para corresponder à primeira ocorrência do padrão.

    $ cat python.txt
    $ sed ‘1 s / Python/ perl /’ python.txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima. Aqui. a primeira ocorrência de “Python” na primeira linha é substituída por “perl”.,

    Go to top

    Substitua a última correspondência num ficheiro com o novo texto

    o seguinte comando irá substituir a última ocorrência do padrão de procura, ‘Python’ pelo texto, ‘Bash’. Aqui, o símbolo ‘ $ ‘ é usado para corresponder à última ocorrência do padrão.

    $ cat python.txt
    $ sed-e’ $s/Python/Bash/ ‘ python.txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima.,

    ir para o topo

    escapar da barra invertida nos comandos substituir para gerir a pesquisa e substituir os locais de ficheiros

    é necessário escapar da barra invertida na localização do ficheiro para procurar e substituir. O seguinte comando de ‘ sed ‘ irá adicionar uma barra invertida (\) na localização do ficheiro.

    $ echo /home/ubuntu/code/perl/add.pl | sed ‘s;/;\\/;g’

    Saída:

    O caminho do arquivo ‘/home/ubuntu/code/perl/add.pl ” é fornecido como entrada no `sed` comando e a seguinte saída será exibida após executar o comando acima.,

    Go to top

    Replace todos os ficheiros full path com apenas o nome do ficheiro no directory

    o nome do ficheiro pode ser obtido a partir do Caminho do ficheiro muito facilmente usando o comando `basename`. o comando ‘ sed ‘ também pode ser usado para recuperar o nome do ficheiro do Caminho do ficheiro. O seguinte comando irá obter o nome do Ficheiro apenas a partir da localização do ficheiro fornecida pelo comando `echo`.

    $ echo “/home/ubuntu/temp/myfile.txt | / sed’s/.* \ / //’

    Saída:

    a seguinte saída irá aparecer após executar o comando acima., Aqui, o nome do ficheiro, ‘ myfile.txt ‘ é impresso como saída.

    Go to top

    Substitute text but only if some other text is found in the string

    Create a file named ‘dept.txt ‘ com o seguinte conteúdo para substituir qualquer texto baseado em outro texto.

    dept.txt

    List of Total Students:

    CSE-Count
    EEE – Count
    Civil – Count

    dois comandos de substituição são usados no seguinte comando `sed`., Aqui, o texto, ‘Contagem’ será substituído por 100 na linha que contém o texto, ‘CSE’ e o texto, ‘Contagem’ será substituído por 70 na linha que contém a pesquisa de padrão, “EEE”.

    $ cat dept.txt
    $ sed-e ‘/CSE/ s/Count/100/; /EEE/ s/Count/70/;’ dept.txt

    Saída:

    a seguinte saída irá aparecer após a execução dos comandos acima.,

    Ir para o topo

    Substituir texto, mas somente se algum outro texto não é encontrado na cadeia de caracteres

    O seguinte `sed` comando irá substituir a ‘Contagem’ valor da linha que não contém o texto, ‘CSE’. Departamento.o ficheiro txt contém duas linhas que não contêm o texto, ‘CSE’. Assim, o texto “Contagem” será substituído por 80 em duas linhas.

    $ cat dept.txt$ sed-i-e ‘ /CSE/! s/Count / 80/; ” dept.txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima.,

    Go to top

    Add string before and after the matching pattern using ‘\1’

    The sequence of matching patterns of `sed` command is denoted by ‘\1’, ‘\2’ and so on. O seguinte comando ‘ sed ‘irá procurar no padrão,’ Bash ‘e se o padrão corresponder, então ele será acessado por’ \1 ‘ na parte de substituir o texto. Aqui, o texto, ‘Bash’ é pesquisado no texto de entrada e, um texto é adicionado antes e outro texto é adicionado depois de ‘\1’.,

    $ echo” Bash language ” | sed ‘s/\(Bash\)/Learn \1 programming/’

    Saída:

    a seguinte saída irá aparecer após executar o comando acima. Aqui ,o texto’ Learn ‘é adicionado antes do texto’ Bash ‘e’ programming ‘é adicionado depois do’Bash’.

    Go to top

    Delete matching lines

    ‘d’ option is used in `sed` command to delete any line from the file. Criar um ficheiro chamado os.txt e adicionar o seguinte conteúdo para testar a função da opção “d”.

    cat os.,txt

    Windows
    Linux
    Android
    Os

    o seguinte comando `sed` irá excluir essas linhas do sistema operacional.ficheiro txt que contém o texto, ‘OS’.

    $ cat os.txt
    $ sed ‘/os / d’ os.txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima.

    Go to top

    Delete matching line and 2 lines after matching line

    o seguinte comando irá apagar três linhas do Ficheiro os.txt se o padrão, ‘Linux’ é encontrado. o.,o txt contém o texto, ‘Linux’ na segunda linha. Então, esta linha e as próximas duas linhas serão apagadas.

    $ sed ‘/Linux/,+2D’ os.txt

    Saída:

    a seguinte saída irá aparecer após executar o comando acima.

    Go to top

    Delete all spaces at end of the line of text

    Using class can be used to remove spaces and tabs from the text or the content of any file. O seguinte comando irá remover os espaços no final de cada linha do Ficheiro, os.txt.,

    $ cat os.txt
    $ sed ‘s/] * $ / /’ os.txt

    Saída:

    os.o txt contém linhas vazias a seguir a cada linha que são apagadas pelo comando `sed` acima.

    Go to top

    Delete todas as linhas que têm uma correspondência duas vezes na linha

    crie um ficheiro de texto chamado, input.txt com o seguinte conteúdo e apagar as linhas do arquivo que contém o padrão de pesquisa duas vezes.

    input.txt

    PHP é uma linguagem de programação server-side.PHP é uma linguagem de código aberto e PHP é sensível a maiúsculas.,PHP is platform-independent.

    o texto’PHP’ contém duas vezes na segunda linha do ficheiro, entrada.txt. Dois comandos sed são usados neste exemplo para remover as linhas que contêm o padrão ‘php’ duas vezes. O primeiro comando ” sed “irá substituir a segunda ocorrência de” php “em cada linha por” dl “e enviar o resultado para o segundo comando” sed ” como entrada. O segundo comando sed irá apagar as linhas que contêm o texto, ‘dl’.

    $ cat input.txt
    $ sed ‘s/php/dl/i2;t’ input.txt / sed ‘/ dl/d’

    saída:

    input.,o ficheiro txt tem duas linhas que contêm o padrão, ‘php’ duas vezes. Então, a seguinte saída irá aparecer depois de executar os comandos acima.

    Go to top

    Delete todas as linhas que tenham apenas espaço em branco

    Selecione qualquer arquivo que contenha linhas vazias no conteúdo para testar este exemplo. entrada.o ficheiro TXT que é criado no exemplo anterior, contém duas linhas vazias que podem ser apagadas usando o seguinte comando `sed`. Aqui, ‘^ $ ‘ é usado para descobrir as linhas vazias no ficheiro, entrada.txt.

    $ cat input.,txt
    $ sed ‘/^$/d’ input.txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima.

    Ir para o topo

    Excluir todos os caracteres não imprimíveis

    caracteres Não-imprimíveis podem ser excluídos a partir de qualquer texto através da substituição de caracteres não-imprimíveis por ninguém. a classe é usada neste exemplo para descobrir os caracteres não-imprimíveis. o ‘\t ‘ é um carácter não-imprimível e não pode ser processado directamente pelo comando `echo`. Para isto, o carácter ‘\T `é atribuído numa variável, $tab que é usada num comando` echo’., O resultado do comando `echo` é enviado no comando `sed` que irá remover o carácter ‘\t’ do resultado.

    $ tab=$’\t’
    $ echo “Olá$tabWorld”
    $ echo “Olá$tabWorld” | sed ‘s/]//g’

    Saída:

    O seguinte saída será exibida após executar os comandos acima. O primeiro comando `echo` irá imprimir o resultado com o espaço de páginas e o comando ‘ sed ‘ irá imprimir o resultado depois de remover o espaço de páginas.,

    Ir para o topo

    Se houver uma correspondência na linha acrescentar algo para o fim da linha

    O seguinte comando irá acrescentar ’10’ no final da linha que contém o texto, ‘Windows’ no sistema operacional.ficheiro txt.

    $ cat os.txt
    $ sed ‘/ Windows / s/$/ 10 / ‘ os.txt

    Saída:

    a seguinte saída irá aparecer após executar o comando.,

    Ir para o topo

    Se houver uma correspondência na linha de inserir uma linha antes do texto

    O seguinte `sed` comando irá procurar o texto, ‘PHP é independente de plataforma” na entrada.o ficheiro txt que foi criado antes. Se o arquivo contém este texto em qualquer linha então,’ PHP é uma linguagem interpretada ‘ será inserido antes dessa linha.

    $ cat input.txt
    $ sed ‘ / PHP is platform-independent / s / ^ / PHP is an interpreted language.entrada \n/’.,txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima.

    Go to top

    If there is a match in the line insert a line after that line

    The following `sed` command will search the text, ‘Linux’ in the file os.txt e se o texto existe em qualquer linha então um novo texto, ‘Ubuntu’ será inserido após essa linha.

    $ cat os.txt
    $ sed ‘s / Linux / &\nUbuntu / ‘ os.,txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima.

    Ir para o topo

    Se não houver uma correspondência acrescentar algo para o final da linha

    O seguinte `sed` comando irá procurar essas linhas no sistema operacional.txt que não contém o texto, ‘ Linux ‘e adiciona o texto,’ Sistema Operacional ‘ no final de cada linha. Aqui, o símbolo ‘ $ ‘ é usado para identificar a linha onde o novo texto será adicionado.

    $ cat os.txt
    $ sed ‘ / Linux/! S/$ / Sistema Operativo / ‘ os.,txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima. Existem três linhas no ficheiro os.txt que não contém o texto,’ Linux ‘ e o novo texto S adicionado no final destas linhas.

    Go to top

    If there is not a match delete the line

    Create a file named web.txt e adicionar o seguinte conteúdo e apagar as linhas que não contêm o padrão correspondente. site.txt HTML 5JavaScriptCSSPHPMySQLJQuery o seguinte comando ‘ sed ‘irá procurar e apagar as linhas que não contêm o texto,’CSS’., $ cat web.txt$ sed ‘ / CSS/!d ‘ web.resultado do txt: o seguinte resultado irá aparecer depois de executar os comandos acima. Existe uma linha no arquivo que contém o texto, ‘CSE’. Então, a saída contém apenas uma linha.

    Go to top

    Duplicate matched text after adding a space after the text

    The following `sed` command will search the word, ‘to’ in the file, python.txt e se a palavra existe então a mesma palavra será inserida após a palavra de pesquisa, adicionando espaço., Aqui, o símbolo’ ‘ é usado para adicionar o texto duplicado.

    $ cat python.txt
    $ sed-E’ S/to /& to/g ‘ python.txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos. Aqui, a palavra ” to ” é pesquisada no arquivo, python.o txt e esta palavra existem na segunda linha deste ficheiro. Então, ‘para’ com espaço é adicionado após o texto correspondente.,

    Go to top

    Replace uma lista de cadeias de caracteres com a nova cadeia de caracteres

    Tem de criar dois ficheiros de listas para testar este exemplo. Criar um ficheiro de texto chamado list1.txt e adicionar o seguinte conteúdo.

    cat list1.txt

    1001 => Jafar Ali
    1023 => Nir Hossain
    1067 => João Michel

    Criar um arquivo de texto chamado list2.txt e adicionar o seguinte conteúdo.

    $ cat list2.txt

    1001 CSE GPA-3.,63
    1002 CSE GPA-3.24
    1023 CSE GPA-3.11
    1067 CSE GPA-3.84

    o seguinte comando `sed` irá corresponder à primeira coluna dos dois ficheiros de texto mostrados acima e substituir o texto correspondente pelo valor da terceira coluna da lista de ficheiros 1.txt.

    $ cat list1.txt
    $ cat list2.txt
    $ sed ‘ cat list1.txt | awk ‘{print “-e s/”$1″/”$3″/”}”<<<“` gato list2.txt ‘”

    Saída:

    1001, 1023 e 1067 da lista 1.o ficheiro txt corresponde aos três dados da list2.,o ficheiro txt e estes valores são substituídos pelos nomes correspondentes da terceira coluna da lista1.txt.

    Go to top

    substitua o texto correspondente por um texto que contém linhas novas

    o seguinte comando irá receber a entrada do comando `echo` e procurar a palavra ‘Python’ no texto. Se a palavra existir no texto, então um novo texto, “texto adicionado” será inserido com newline. $ echo “Bash Perl Python Java PHP ASP “/ sed’s/Python/ Added Text\n /’ Output: a seguinte saída irá aparecer depois de executar o comando acima.,

    ir para o topo

    remover as linhas novas do ficheiro e inserir uma vírgula no fim de cada linha

    o seguinte comando `sed` irá substituir cada linha nova por uma vírgula no ficheiro os.txt. Aqui, a opção-z é usada para separar a linha por caracteres nulos.

    $ sed-z ‘s/\n/,/g’ os.txt

    Saída:

    a seguinte saída irá aparecer após executar o comando acima.,

    ir para o topo

    remover vírgulas e adicionar uma nova linha para dividir o texto em várias linhas

    o seguinte comando `sed` irá tomar a linha separada por vírgulas do comando `echo` como entrada e substituir a vírgula pela nova linha.

    $ echo “Kaniz Fatema,30,lote” | sed “s/,/\n/g’

    Saída:

    O seguinte saída será exibida após executar o comando acima. O texto de entrada contém três dados separados por vírgulas que são substituídos por linha nova e impressos em três linhas.,

    Go to top

    Find case insensível match and delete line

    ‘i’ is used in `sed` for the case-insensível match that indicates ignore case. O seguinte comando ‘ sed ‘irá procurar na linha que contém a palavra’ linux ‘ e apagar a linha do sistema operacional.ficheiro txt.

    $ cat os.txt
    $ sed ‘/ linux / Id ‘ os.txt

    Saída:

    a seguinte saída irá aparecer após executar o comando acima. o.,o txt contém a palavra ‘Linux’ que corresponde ao padrão, ‘linux’ para a pesquisa sem distinção de maiúsculas e apagada.

    Go to top

    Find case insitive match and replace with new text

    o seguinte comando `sed` irá retirar a entrada do comando `echo` e substituir a palavra ‘bash’ pela palavra ‘PHP’.

    $ echo “I like bash programming” | sed ‘s/Bash/PHP/i’

    Saída:

    a seguinte saída irá aparecer após executar o comando acima., Aqui, a palavra “Bash” corresponde à palavra “bash” para uma pesquisa sem distinção de maiúsculas e substituída pela palavra “PHP”.

    Go to top

    Find case insensível match and replace with all uppercase of the same text

    ‘\U’ is used in `sed` to convert any text to all uppercase letter. O seguinte comando ‘ sed ‘irá procurar na palavra’ linux ‘ no so.ficheiro txt e se a palavra existir, então irá substituir a palavra por todas as letras maiúsculas.

    $ cat os.txt
    $ sed ‘s/\(linux\)/\U\1 / Ig’ os.,txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima. A palavra ‘Linux’ do sistema operacional.o ficheiro txt é substituído pela palavra “LINUX”.

    Go to top

    Find case insensível match and replace with all lowercase of same text

    ‘\l’ is used in `sed` to convert any text to all lowercase letters. O seguinte comando ‘ sed ‘irá procurar na palavra’ Linux ‘ no so.ficheiro txt e substituir a palavra por todas as letras minúsculas.

    $ cat os.txt
    $ sed ‘s/\(linux\)/\L\1 / Ig’ os.,txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima. A palavra “Linux” é substituída pela palavra “linux” aqui.

    Go to top

    substitua todos os caracteres maiúsculos do texto por caracteres minúsculos

    o seguinte comando `sed` irá procurar todos os caracteres maiúsculos no so.ficheiro txt e substituir os caracteres por letras minúsculas, usando o ‘\L’.

    $ cat os.txt
    $ sed ‘s / \(.*\) /\L\1 / ‘ os.,txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima.

    Go to top

    33. Procure o número na linha e adicione qualquer símbolo monetário antes do número

    crie um ficheiro com nomes de itens.txt com o seguinte conteúdo.

    itens.txt

    HDD 100
    Monitor 80
    Mouse 10

    o seguinte comando `sed` irá procurar o número em cada linha de itens.ficheiro txt e adicione o símbolo da moeda, ‘ $ ‘ antes de cada número.

    $ cat items.,txt
    $ sed ‘s/\(\)/$\1/g’ items.txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima. Aqui, o símbolo ‘ $ ‘ é adicionado antes do número de cada linha.

    Ir para o topo

    Adicionar vírgulas para os números que têm mais de 3 dígitos

    O seguinte `sed` comando vai demorar um número como entrada de `echo` comando e adicione uma vírgula após cada grupo de três dígitos, contando a partir da direita. Aqui,’: a ‘indica o rótulo e’ ta ‘ é usado para iterar o processo de agrupamento.,

    $ echo “5098673” | sed-e :a-e ‘s/\(.*\)\(\{3\}\)/\1,\2/;ta’

    Saída:

    O número de 5098673 é dado o `echo` comando e o `sed` comando gerado o número 5,098,673 adicionando vírgula após cada grupo de três dígitos.

    Go to top

    substitui o carácter tab por 4 caracteres espaciais

    o seguinte comando sed irá substituir cada carácter tab (\t) por quatro caracteres espaciais., o símbolo ‘ $ `é usado no comando` sed ‘para corresponder ao carácter da página e o’ g ‘ é usado para substituir todos os caracteres da página.

    $ echo-e “1\t2\t3” | sed $’s/\t/ /g’

    Saída:

    O seguinte saída será exibida após executar o comando acima.

    Go to top

    substitui 4 caracteres espaciais consecutivos por caracteres tab

    o seguinte comando irá substituir 4 caracteres consecutivos por caracteres tab (\t).,

    $ echo-e “1 2” | sed $’s/ /\t/g’

    resultado:

    o resultado seguinte irá aparecer após executar o comando acima.

    Go to top

    Truncate all lines to first 80 characters

    Create a text file named in.txt que contém as linhas mais de 80 caracteres para testar este exemplo.

    in.txt

    PHP é uma linguagem de programação server-side.PHP é uma linguagem de código aberto e PHP é sensível a maiúsculas. PHP é independente de plataforma.
    o seguinte comando ‘ sed ‘ truncará cada linha de in.,ficheiro txt em 80 caracteres.

    $ cat in.txt
    $ sed ‘ s / \(^.\{1,80\}\).* / \1 / ‘ in.txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima. A segunda linha de entrada.o ficheiro txt contém mais de 80 caracteres e esta linha é truncada na saída.

    Go to top

    Search for a string regex and append some standard text after it

    the following `sed` command will search the text, ‘hello’ in the input text and append the text, ‘John’ after that text.,

    $ echo ” hello, how are you?”|sed ‘ s/\(hello\)/\1 John /’

    Saída:

    o seguinte resultado irá aparecer após executar o comando acima.

    Ir para o topo

    Procurar string regex e acrescentar texto após a segunda partida em cada linha

    O seguinte `sed` comando irá procurar o texto, ‘PHP’ em cada linha de entrada.txt e substituir o segundo jogo em cada linha com o texto, ‘novo texto adicionado’.

    $ cat input.txt
    $ sed ‘s / \(PHP\) / \1 (novo texto Adicionado)/2’ input.,txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima. O texto de busca, ‘PHP’ aparece por duas vezes na segunda e terceira linhas de entrada.ficheiro txt. Assim, o texto “novo texto adicionado” é inserido na segunda e terceira linhas.

    Go to top

    Running multi-line `sed` scripts from a file

    Multiple `sed` scripts can be stored in a file and all the scripts can be executed together by running `sed` command. Crie um ficheiro chamado ‘sedcmd’ e adicione o seguinte conteúdo., Aqui, dois scripts sed são adicionados no arquivo. Um script irá substituir o texto, ‘ PHP ‘ por ‘ ASP ‘outro script irá substituir o texto, ‘independente’ pelo texto, ‘dependente’.

    sedcmd

    s/PHP/ASP/
    s/independente/dependente/

    O seguinte `sed` comando irá substituir tudo ‘PHP’ e ‘independente’ texto ‘ASP’ e ‘dependentes’. Aqui, a opção’ – f `é usada no comando` sed `para executar o script` sed ‘ do ficheiro.

    $ cat sedcmd
    $ sed-f sedcmd input.,txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima.

    Ir para o topo

    Corresponder a um multi-padrão de linha e substitua com o novo multi-linha de texto

    O seguinte `sed` comando irá procurar o texto de várias linhas, ‘Linux\nAndroid” e se o padrão corresponde, em seguida, a correspondência de linhas será substituído pelo texto de várias linhas, ‘Ubuntu\nAndroid Pirulito’. Aqui, P E D são usados para processamento multi-linha.

    $ cat os.txt$ sed’$!N;s/Linux\nAndoid/Ubuntu\nAndoid Lollipop/; P; D’ os.,txt

    Saída:

    a seguinte saída irá aparecer após executar os comandos acima.

    Ir para o topo

    Substituir, a fim de duas palavras em um texto que correspondem a um padrão

    O seguinte `sed` comando irá levar a entrada de duas palavras de `echo` comando e substituir a ordem dessas palavras.

    $ echo “perl, python” | sed -e ‘s/\(*\) *\(*\)/\2 \1/’

    Saída:

    O seguinte saída será exibida após executar o comando acima.,

    Go to top

    Execute múltiplos comandos sed a partir da linha de comandos

    `-e` é usada no comando sed para executar vários programas sed a partir da linha de comandos. O seguinte comando ” sed “irá receber um texto como entrada do comando “echo” e substitui “Ubuntu” por “Kubuntu” e “Centos” por “Fedora”.

    $ echo “Ubuntu, Centos, Debian” | sed -e ‘s/Ubuntu/Kubuntu/; s/Centos/Fedora/’

    Saída:

    O seguinte saída será exibida após executar o comando acima., Aqui, “Ubuntu” e “Centos” são substituídos por “Kubuntu” e “Fedora”.

    Ir para o topo

    Combine `sed` com outros comandos

    O seguinte comando irá combinar o `sed` comando `cat` comando. O primeiro comando` sed ‘ irá receber dados do sistema operacional.txt file and send the output of the command to second ‘ sed ‘command after replacing the text’ ‘Linux’ by ‘Fedora’. O segundo comando sed irá substituir o texto, “Windows” por “Windows 10”.

    $ cat os.,txt/sed ‘s/Linux/ Fedora|’/sed ‘s/windows/Windows 10/i’

    Saída:

    a seguinte saída irá aparecer após executar o comando acima.

    Go to top

    Insert empty line in a file

    Create a file named stdlist with the following content.

    stdlist

    #ID #Name
    -Ali
    -Neha

    ‘g’ option is used to insert empty line in a file. O seguinte comando ‘ sed ‘ irá inserir linhas vazias a seguir a cada linha do ficheiro stdlist.,

    $ cat stdlist
    $ sed G stdlist

    Saída:

    O seguinte saída será exibida após executar os comandos acima. É inserida uma linha vazia a seguir a cada linha do ficheiro.

    Go to top

    Replace todos os caracteres alfanuméricos por espaço em cada linha de um ficheiro.

    o seguinte comando irá substituir todos os caracteres alfanuméricos por espaço no ficheiro stdlist.,

    $ cat stdlist
    $sed ‘s///g’ stdlist

    Saída:

    O seguinte saída será exibida após executar os comandos acima.

    Ir para o topo

    Use ‘&’ imprimir a seqüência correspondente

    O comando a seguir irá procurar a palavra que começa com ‘L’ e substitua o texto, acrescentando ‘Seqüência correspondente é –’ com a correspondência de palavra usando o ‘&’ símbolo. Aqui, ‘ p ‘ é usado para imprimir o texto modificado.,

    $ sed-n ‘S/^L/String Matched is – & / p’ os.txt

    Saída:

    a seguinte saída irá aparecer após executar o comando acima.

    Go to top

    Switch pair of words in a file

    Create a text file named course.txt com o seguinte conteúdo que contém o par de Palavras em cada linha.claro.,txt

    PHP ASP
    MySQL Oracle
    CodeIgniter Laravel

    O seguinte comando irá trocar o par de palavras em cada linha do ficheiro, é claro.txt.

    $ sed ‘s/\(*\) *\(*\)/\2 \1/’ claro.txt

    Saída:

    a seguinte saída irá aparecer após mudar o par de Palavras em cada linha.,

    Go to top

    Capitalize o primeiro carácter de cada palavra

    o seguinte comando `sed` irá tomar o texto de entrada do comando `echo` e converter o primeiro carácter de cada palavra para uma letra maiúscula.

    $ echo “I like bash programming” | sed ‘s/\(\)\(*\)/\u\1\2 / g’

    resultado:

    o resultado seguinte irá aparecer após executar o comando acima. O texto de entrada, “I like bash programming “é impresso como” I Like Bash Programming ” depois de capitalizar a primeira palavra.,

    Go to top

    Print line numbers of the file

    ‘=’ symbol is used `sed` command to print the line number before each line of a file. O seguinte comando irá imprimir o conteúdo do so.ficheiro txt com número de linha.

    $ sed ‘=’ os.txt

    Saída:

    a seguinte saída irá aparecer após executar o comando acima. Há quatro linhas no sistema operativo.ficheiro txt. Então, o número da linha é impresso antes de cada linha do arquivo.,

    Ir para o topo

    Conclusão:

    os Diferentes usos de `sed` comandos são explicados neste tutorial usando exemplos muito simples. A saída de todos os scripts` sed ‘ mencionados aqui são gerados temporariamente e o conteúdo do arquivo original permaneceu inalterado. Mas se quiser, pode modificar o ficheiro original usando a opção –i ou –in-place do comando `sed. Se você é um novo usuário Linux e quer aprender os usos básicos do comando` sed ‘ para executar vários tipos de tarefas de manipulação de texto, então este tutorial irá ajudá-lo., Depois de ler este tutorial, hope, qualquer usuário terá o conceito claro sobre as funções do comando `sed`.

    Leave A Comment