Alteração de Arquivo via Script [RESOLVIDO]

1. Alteração de Arquivo via Script [RESOLVIDO]

Newton
Netospt

(usa Outra)

Enviado em 06/06/2019 - 09:50h

Pessoal, bom dia. Sou novo por aqui,
Uma dúvida rapidão,
Estou precisando alterar um arquivo de properties com um range de datas que o usuário irá realizar no input. Esse arquivo contém outras informações. Pensei no sed, porém essa informação é variável. Eu conseguiria buscar a informação atual , jogar numa variável, logo em seguida realizar a edição das datas com o input do usuário?
Primeiro usaria o grep pra pegar a informação e depois o sed? Vocês poderiam me ajudar com a sintaxe ?


  


2. MELHOR RESPOSTA

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 06/06/2019 - 15:38h


Netospt escreveu:

msoliver escreveu:


Netospt escreveu:

extract.start-range=20190301
extract.final-range=20190601

buscar esses valores 20190301( é uma variavel , valor pode ser outro ) , e modificar com o input do usuario.

Boa tarde Neto.
Segue exemplo, para um arquivo como mostrado acima.
sed -r '/^.*start.*/s/[0-9]{8}/NOVADATA/' arquivo.txt
#Altera a DATA (com 8 dígitos) na LINHA que tem "start"
Att.: Marcelo Oliver


Obrigado Marcelo, ajudou bastante.
Poderia descrever esse comando ?
o '/^.*pesquisa string.*/ --> O /^ funciona como pesquisa ?
Outro ponto, quando informo o comando, ele altera ... porém como consigo salvar essa alteração ?

Muito Obrigado.

Vou responder mais essa....
Na esperança que marque o tópico como resolvido e escolha a MINHA RESPOSTA, como A MELHOR, assim ganho uns pontinhos....
o '/^.*pesquisa string.*/ --> O /^ funciona como pesquisa ?
Não!
O ^ indica que começa com , veja sobre expressões regulares ou REGEX.
Esse comando é o básico do sed,
sed "s/trocaisto/poraquilo/"
Ex:
echo "Viva o Windows"|sed 's/Windows/LINUX!!!/'
Outro ponto, quando informo o comando, ele altera ...
Para alterar use o "-i";
sed -ri '/^.*start.*/s/[0-9]{8}/NOVADATA/' arquivo.txt 


IMPORTANTE!!! => echo -e "$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')"
Att.: Marcelo Oliver

3. Exemplo

Newton
Netospt

(usa Outra)

Enviado em 06/06/2019 - 10:21h

extract.start-range=20190301
extract.final-range=20190601

buscar esses valores 20190301( é uma variavel , valor pode ser outro ) , e modificar com o input do usuario.



4. Re: Alteração de Arquivo via Script [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 06/06/2019 - 13:32h


Netospt escreveu:

extract.start-range=20190301
extract.final-range=20190601

buscar esses valores 20190301( é uma variavel , valor pode ser outro ) , e modificar com o input do usuario.

Boa tarde Neto.
Segue exemplo, para um arquivo como mostrado acima.
sed -r '/^.*start.*/s/[0-9]{8}/NOVADATA/' arquivo.txt
#Altera a DATA (com 8 dígitos) na LINHA que tem "start"
Att.: Marcelo Oliver


5. Re: Alteração de Arquivo via Script [RESOLVIDO]

Newton
Netospt

(usa Outra)

Enviado em 06/06/2019 - 14:27h

msoliver escreveu:


Netospt escreveu:

extract.start-range=20190301
extract.final-range=20190601

buscar esses valores 20190301( é uma variavel , valor pode ser outro ) , e modificar com o input do usuario.

Boa tarde Neto.
Segue exemplo, para um arquivo como mostrado acima.
sed -r '/^.*start.*/s/[0-9]{8}/NOVADATA/' arquivo.txt
#Altera a DATA (com 8 dígitos) na LINHA que tem "start"
Att.: Marcelo Oliver


Obrigado Marcelo, ajudou bastante.
Poderia descrever esse comando ?
o '/^.*pesquisa string.*/ --> O /^ funciona como pesquisa ?
Outro ponto, quando informo o comando, ele altera ... porém como consigo salvar essa alteração ?

Muito Obrigado.









Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts