![]() |
|
|
google unix.com
|
|||||||
| Fóruns | Registar | Fórum Regimento | Ligações | Álbuns | FAQ | Lista deputados | Calendário | Pesquisa | Today's Posts | Mark Forums Read |
| Programação Shell Script e Post perguntas sobre ksh, CSH, SH, BASH, Perl, PHP, SED, Awk e outros scripts shell e shell scripts línguas aqui. |
Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
|
||||
| Fio | Thread Starter | Fórum | Respostas | Última postagem |
| Word count wc | chaandana | UNIX para Dummies Perguntas & Respostas | 5 | 05-05-2009 11:47 |
| Como contar as ocorrências de uma palavra específica em um arquivo de comandos bash | mskart | UNIX para Dummies Perguntas & Respostas | 2 | 10-30-2008 12:42 |
| Como encontrar uma contagem de uma palavra dentro de um arquivo | bd_joy | Programação Shell Script e | 9 | 07-14-2008 10:29 |
| grep todos os registros em um arquivo e obter uma palavra contam-perl | meghana | Programação Shell Script e | 4 | 02-13-2008 10:06 |
| Contar o número de ocorrência de perticular palavra a partir do arquivo | rayashot | Programação Shell Script e | 40 | 08-10-2007 08:33 |
![]() |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
|
|
||||
|
a forma de contar uma palavra em um arquivo
Dear all, Tenho uma exigência para contar os erros e visualização de um arquivo. por exemplo. file1.txt Código:
sjdgfjdgfgd ora-0001 sdjgfydh sdukgh7 23 sjdgfjdgfgd ora-0002 sdjgfydhsf34 ew 34v sjdgfjdgfgd ora-0008 sdjgfydh asdf asdfas sjdgfjdgfgd ora-0001 sdjgfydhjkbs ui873 sjdgfjdgfgd ora-0004 sdjgfydh 2876gfen sjdgfjdgfgd ora-0002 sdjgfydhj uewiuriue 324987 a saída seria: Código:
Error Code : ORA-0001 Count : 2 Error Code : ORA-0002 Count : 2 Error Code : ORA-0004 Count : 1 Error Code : ORA-0008 Count : 1 Eu escrevi um prog. como a seguir e está funcionando bem. gostaria de saber se existe alguma forma simples de escrever o prog. Novo em Unix portanto não tenho certeza de outras maneiras. Thanks in advance. Código:
#!/bin/sh echo "Enter filename..." read name cd /test/unix cat $name | while read line do echo "$line" > tmpj cat "tmpj" | egrep -c ora- > tmpk if [ `cat tmpk` -gt 0 ] then cat tmpj | sed 's/.*\(ora-.....\).*/\1/' >> tmpl fi done rm tmpj rm tmpk for var1 in `cat tmpl` do echo "$var1" > tmpj cat tmpl | egrep -c `cat tmpj` > tmpk if [ `cat tmpk` -gt 0 ] then echo "Error Code : "$var1" Count : `cat tmpk`" sed "/$var1/d" tmpl > tmpm mv tmpm tmpl fi done rm tmpj rm tmpk rm tmpl Última edição por vgersh99; em 07/09/2009 12:11.. Motivo: código tags, POR FAVOR! |
|
||||
|
Oi gerh99, Obrigado, excelente código. O arquivo que eu tinha é uma mensagem de erro eo ficheiro ora erros nem sempre são o 2. Col. / occurence. ora erro pode aparecer em qualquer linha ou vai aparecer também. Pedimos desculpas pelo transtorno. por exemplo. Código:
sjdgfjdgfgd sdjgfydh sdukgh7 23 ora-0001 sjdgfj dgf g d ora-0002 sdjgfydhsf34 ew 34v sjdg fjdgf gd ora-0008 sdjgfydh asdf asdfas sjdgfj dgf gd ora-0001 sdjgfydhjkbs ui873 sjdgfjdg fgd sdjgfydh 2876gfen sj dgfjd gfgd ora-0002 sdjgfydhj uewiuriue 324987 Última edição por vgersh99; em 07/09/2009 12:51.. Motivo: código tags, POR FAVOR! |
|
||||
|
HI Gersh99, Obrigado novamente pela resposta pronta e que trabalhar bem e trabalhar muito mais rapidamente para o meu código (que já referi no 1 º lugar). Nawk é algo novo para mim, pesquisados na novatos unix livro (por Wrox) nada muito disponível. Corrija-me se Im worng: O código está tendo "espaço" como o espaço separador. e se o arquivo é um pouco parecido com isto: Código:
sjhgfjhgdfs ora-0001 kjhsf 098j 97h suiy23vb jhf8 ora-0001 jkhsdkj 98798 error:ora-0001 uif987 então estou começando a saída não como ora-0001: 3, mas como Código:
ora-0001 : 2 error:ora-0001 : 1 existe qualquer maneira eu posso extrair apenas palavras começando com ora - Última edição por vgersh99; em 07/10/2009 07:48.. Motivo: código tags, POR FAVOR! |
|
|||||
|
Código:
nawk '
/ora-[0-9]/ {
for(i=1;i<=NF;i++)
if ( $i ~ /ora-[0-9]/ ) { a[substr($i,index($i,"ora-"))]++; break}
}
END {
for (i in a)
print "Error Code : " i " Count : " a[i]
}
' file1.txt
Última edição por vgersh99; em 07/10/2009 07:56.. Motivo: Ooops, desculpe - misread a exigência |
![]() |
| Marcadores |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|