Alterar Conteudo de Arquivo com valores Fornecidos pelo usuario.

1. Alterar Conteudo de Arquivo com valores Fornecidos pelo usuario.

Wallison Oliveira
wallisonlau

(usa Outra)

Enviado em 23/08/2020 - 10:13h

Amigos,
Estou precisando de um help com uma situação e se puderem me ajudar serei grato.
Quero automatizar um processo e preciso alterar o conteudo de um arquivo, para essa alteracao sem abrir o arquivo eu utilizo o SED.
Exemplo:
sed -i 's/:=LOJA;/:=001;/g' teste.sql
No exemplo acima estou alterando o valor :=LOJA para :=001no arquivo teste.sql

Acontece que o valor 001 nao é fixo, podendo ser outros , sendo assim gostaria de uma forma de coletar a informaçao por meio de digitacao do usuario, por exemplo usando o read,onde o valor digitado pelo usuario sera usado no comando SED.

Tipo assim:

echo "Informe Codigo da FIlial :"
read LJ
sed -i 's/:=LOJA;/:=$LJ;/g' teste.sql (No caso o valor $LJ seria alterado pelo que o usuario digitou.







  


2. Re: Alterar Conteudo de Arquivo com valores Fornecidos pelo usuario.

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 23/08/2020 - 17:33h


wallisonlau escreveu:

Amigos,
Estou precisando de um help com uma situação e se puderem me ajudar serei grato.
Quero automatizar um processo e preciso alterar o conteúdo de um arquivo, para essa alteração sem abrir o arquivo eu utilizo o SED.
Exemplo:
sed -i 's/:=LOJA;/:=001;/g' teste.sql
No exemplo acima estou alterando o valor :=LOJA para :=001no arquivo teste.sql

Acontece que o valor 001 nao é fixo, podendo ser outros , sendo assim gostaria de uma forma de coletar a informação por meio de digitação do usuário, por exemplo usando o read,onde o valor digitado pelo usuário sera usado no comando SED.

Tipo assim:

echo "Informe Codigo da FIlial :"
read LJ
sed -i 's/:=LOJA;/:=$LJ;/g' teste.sql (No caso o valor $LJ seria alterado pelo que o usuário digitou.

Boa tarde wallisonlau.
É isso mesmo, só tem um detalhe:
Use "aspas duplas" no sed, senão a var LJ não é resolvida..
Exemplo:
read -p "Informe Código da Filial : " LJ
sed -i "s/LOJA/$LJ/g" teste.sql

Ou:
sed -i 's/LOJA/'$LJ'/g' teste.sql
OBS.: Se na LINHA, só tem uma OCORRÊNCIA de "LOJA", não é necessário o "g"

______________________________________________________________________
Importante: echo -e "\n$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')\n"
Att.: Marcelo Oliver
______________________________________________________________________