|
Как рассчитывать слово в файле
Уважаемые все,
У меня требование, чтобы подсчитать ошибки и дисплей из файла.
напр. file1.txt
Код:
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
выходе будет:
Код:
Error Code : ORA-0001 Count : 2
Error Code : ORA-0002 Count : 2
Error Code : ORA-0004 Count : 1
Error Code : ORA-0008 Count : 1
Я написал прог. как и ниже, и работает хорошо. хотелось бы знать Есть какой-либо простой способ записать прог. Впервые на Unix, не так уверены в других отношениях.
Спасибо заранее.
Код:
#!/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
Последний раз редактировалось vgersh99; на 07-09-2009 12:11 PM.. Причина: код тегов, пожалуйста!
|