shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Inserir um texto ante da linha N


From: phribbr
Subject: Re: Inserir um texto ante da linha N
Date: Mon, 21 May 2007 13:58:37 -0000
User-agent: eGroups-EW/0.82

Ola,

Se vc tiver um pouco mais de tempo,
acho que tambem da pra fazer com o vi

#!/bin/bash
p=$1
t=$2
vi arq.txt <<END
:/$p
O
$t <esc>
:wq
END


# :/$p -> procura a palavra
# O -> entra no modo de edicao na linha acima
# $t <esc>-> escreve a palavra e entra com o ESC(ctrl+[)
# :wq -> salva

Valeu!
Paulo Henrique

--- Em address@hidden, "trans548" <trans548@...> escreveu
>
> Ola, pessoal
> 
> Estou tentando fazer um script que insira um texto - uma ou mais 
> linha- antes da palavra padrao em um arquivo txt.
> 
> Direto no console eu faço assim: sed -i '/padrao>/{h;s/.*/Texto 
> adicionado/;p;x;}' arquivo.txt
> 
> Funciona, porem quando tento montar um script para automatizar nao dá 
> certo, acredito que seja devido ao fato de que no final de todas as 
> palavras padrao ter o sinal de maior  '>'.
> 
> Entao eu preciso de uma variavel faça uma busque no arquivo.txt a 
> palavra padrao, e outra variavel que pegue o texto que vou digitar e
> insira-o antes da palavara padrao>
> 
> tipo:
> 
> #! /bin/bash
> 
> p=$1  #palavra a procurar
> t=$2  # texto a inserir no arquivo.txt
> 
> l= grep $p
>  
> sed -i '/$l/{h;s/.*/$t/;p;x;}' arquivo.txt
> 
> Desde ja agradeço a juda.
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]