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

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

Re: RES: [shell-script] Trabalhando com vetores e combinações em shell s


From: Thobias Salazar Trevisan
Subject: Re: RES: [shell-script] Trabalhando com vetores e combinações em shell script
Date: Tue, 27 May 2003 17:35:40 -0300 (BRT)

ae rodolfo,

On Tue, 27 May 2003, Rodolfo Villanova wrote:

> Vou ter que começar a estudar mais a fundo a lógica de execução do
> SED, pois dele só conheço o BeaBá!

e eu tenho que tentar escrever script mais portáveis.
o problema é que gosto de usar as 'frescurits' do bash :)

> Não "intindí" nada do que é aquele sed "s/.*$1\(.\).*/\\1/" !

simples, como colocamos o 'echo xxxxx sed' em uma função, o $1
vai ter a letra que passarmos como argumento. Então o que o sed
faz é:

$ echo ABCDEFGH | sed 's/.*C\(.\).*/\1/'
D

ou seja, substituimos, qualquer caractere repetido n vezes, até
encontrar o que procuramos, no exemplo C. Criamos um grupo de
somente um caractere (note, ele vai ser o caractere após o C).
depois fizemos .* para pegar o que sobrou. Trocamos tudo isto
pelo grupo que criamos, ou seja, o próximo caractere após o que
procuramos.

Vamos quebrar aquele sed:

s  ->   subsitituimos
  .*C   qualquer caractere repetidos 0 ou mais vezes até C
  \(.\) pegamos o próximo e fizemos um grupo com ele
  .*    qualquer caractere repetido n vezes

\1      isto é o retrovisor, nele vai ter o caractere que está no
        grupo que criamos, ou seja, o caractere após C.


resumindo, ele pega o próximo caractere após o que passarmos como
parâmetro.

falow

thobias
-------
echo 9446046325380026818553633794429812592304650P | dc
-------
http://www.lcp.coppe.ufrj.br/~thobias

____________________________
|
| Against - HTML Mail
| Against - MS ATTACHMENTS
|
----------------------------



reply via email to

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