[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] help com manipulacao de arquivos
From: |
Thobias Salazar Trevisan |
Subject: |
Re: [shell-script] help com manipulacao de arquivos |
Date: |
Thu, 12 Jun 2003 15:25:49 -0300 (BRT) |
ae joao paulo,
On Thu, 12 Jun 2003, Joao Paulo Muller da Silva wrote:
> Tobias, eu nao consegui fazer funcionar o script que mandaste.
> E tambem deu um erro no sed -n ", e como nao entendo muito nao sei o que
> pode ser.
hmm, qual versão do sed, bash e SO ?!
> O que eu quero e o seguinte:
> eu tenho um arquivo palavras.txt
> palavra1
> palavra2
> palavra3
> essas palavras eu nao sei quais sao.
>
> ai tenho um outro arquivo texto.txt
> palavra5 palavra3 palavra2 palavra1 palavra3
> palavra5 palavra3 palavra2 palavra1 palavra3
> e assim por diante, neste arquivo tambem nao sei o que contem o texto.
>
> e quero fazer um script para verificar se as palavras do arquivo
> palavras.txt estao no arquivo texto.txt, e caso estejam quero contar o
> numero de vezes que cada uma aparece.
$ cat palavras.txt
palavra1
palavra2
palavra3
none
$ cat texto.txt
palavra5 palavra3 palavra2 palavra1 palavra3
palavra5 palavra3 palavra2 palavra1 palavra3
$ cat conta_palavra.sh
#!/bin/bash
sed -n "
1{;x;s/^/0/;x;}
/\b$1\b/{
:c
s/\b$1\b//;ta
bb
:a
x
:p
s/9\(_*\)\$/_\1/;tp
s/^\(_*\)\$/0\1/;s/ \(_*\)\$/0\1/
s/8\(_*\)\$/9\1/;s/7\(_*\)\$/8\1/
s/6\(_*\)\$/7\1/;s/5\(_*\)\$/6\1/
s/4\(_*\)\$/5\1/;s/3\(_*\)\$/4\1/
s/2\(_*\)\$/3\1/;s/1\(_*\)\$/2\1/
s/0\(_*\)\$/1\1/;s/_/0/g
x;tc
}
:b
\${x;p;}" < $2
#########################################
testando:
$ for i in $(cat palavras.txt);do
echo -n "$i = "
./conta_palavra.sh $i texto.txt
done
palavra1 = 2
palavra2 = 2
palavra3 = 4
none = 0
PS: cuidado ao copiar o script. Verifique se não está ficando
sujeira no final da linha ou caracteres ocultos...
falowzz
thobias
-------
echo 9446046325380026818553633794429812592304650P | dc
-------
http://www.lcp.coppe.ufrj.br/~thobias
____________________________
|
| Against - HTML Mail
| Against - MS ATTACHMENTS
|
----------------------------