Chronos Inside
02 março, 2006
  Search/Replace direto na variavél sem usar SED.
Opa, dica super rápida!
Evitando de usar o glorioso sed para fazer search/replace em prol de fazer na própria variavel em casos simples:

1: for e in `find http/cpub/pt -type d | grep -v CVS`;
2: do
3: foobar=`find $e -type f -maxdepth 1`;
4: for i in $foobar;
5: do
6: echo ${i/$e\/} >> $e/.cvsignore
7: done
8: done

1: Este for faz uma busca por diretórios
3: foobar recebe todos os arquivos do diretório corrente com no máximo 1 nivel
4: para cada item em foobar (que tem vários caminhos de arquivos separados por espaços)
6: uso o echo ${i/$e\/} para tirar o caminho do diretório ($e) de $i, que é o caminho completo do arquivo a partir de onde eu mandei buscar.
resumindo, da para economizar mto em sed usando isso.
mais exemplos copiados da fonte:

$ echo $a
$ echo ${a/O/.} # sed s///
$ echo ${a//O/.} # sed s///g
$ echo $a | sed 's/O/./g'
$ echo ${a//O/.tyturtu}
$ rpm -q bash
$ b=O
$ echo ${a//$b/.}

Fonte: http://aurelio.net/curso/conectiva/conectiva-shell-prompt.html#toc4 (Esse cara manja, tem mta info no site dele).
 
Comments: Postar um comentário



<< Home
putz...precisa disso. Bem, aqui quero falar muito pouco sobre minha vida pessoal, e principalmente sobre programação, linux, e coisas relacionadas. tem espaço ainda para bike, que eu amo!

ARCHIVES
fevereiro 2006 / março 2006 / abril 2006 / junho 2006 / agosto 2006 / maio 2007 /


Powered by Blogger