Editor de vapor, reduzido como sed, é um comando usado para encontrar e substituir qualquer texto em um arquivo usando várias técnicas e sintaxes. Neste post, entenderemos os conceitos de sed e aprendermos como você pode substituir uma variável ou seu valor em um arquivo usando sed.
A sintaxe para substituir a string
Para substituir um valor variável usando sed, primeiro precisamos entender como o SED funciona e como podemos substituir uma string simples em qualquer arquivo usando sed.
Para substituir qualquer string, a sintaxe é bem simples e dada abaixo:
$ sed -i 's/string antigo/new-string/g' file_name
Nesta sintaxe, você só precisa fornecer a string que deseja substituir na string antiga e depois a nova string nas vírgulas invertidas. Depois disso, forneça o arquivo no qual você deseja encontrar e substitua a string mencionada.
Exemplo:
Suponha que temos um arquivo de texto “arquivo.txt ”no qual temos algum texto aleatório como“ Welcome to Linuxhint's Channel ”e, neste arquivo, queremos substituir o canal do Word no site usando o comando sed.
$ CAT FILE.TXT
O comando para alterar o canal para o site seria assim:
$ sed -i 's/canal/site/g' arquivo.TXT
Depois de executar o comando, damos uma olhada no arquivo:
$ CAT FILE.TXT
A string foi substituída usando o comando sed. Então, é assim que você pode encontrar e substituir qualquer string em qualquer arquivo do sistema operacional Linux usando o comando sed.
Agora, vamos aprender a substituir um valor variável em um arquivo.
Substitua uma variável
A sintaxe para encontrar e substituir o valor de uma variável em um arquivo usando sed é o mesmo que encontrar e substituir uma string em um arquivo. A única parte complicada é escrever uma expressão regular para encontrar algo em um arquivo para substituir essa parte. Portanto, para alterar o valor de uma variável, a sintaxe será assim:
$ sed -i 's/var =.*/var = new_value/'file_name
Vejamos um exemplo para ver a verdadeira implementação e entendê -la com mais clareza.
Exemplo:
Suponha que tenhamos um arquivo de código python no qual temos algumas variáveis. Essas variáveis têm alguns valores atribuídos a eles.
$ CAT Código.py
Agora, para substituir qualquer variável, podemos procurá -la por seu nome e fornecer um novo valor usando o comando sed dado abaixo:
$ sed -i 's/num1 =.*/num1 = 200/'código.py
Depois de executar o comando sed acima, exibimos o conteúdo do arquivo novamente:
$ CAT Código.py
Você pode ver que o valor da variável "num1" foi substituído de acordo com o nosso requisito.
Usando este truque simples, você pode substituir qualquer variável ou seu valor em qualquer arquivo usando sed.
Conclusão
Esta postagem fornece uma maneira simples e fácil de encontrar e substituir uma variável em qualquer arquivo usando sed. Aprendemos a substituir uma string em um arquivo e substituir o valor de uma variável usando sed.