#! /bin/bash
while read TABNAME
do
TMPFILE=/home/vbsdep/upperc/ALS6_XD/${TABNAME}.tmp
cdate=$(date +%Y%m%d)
file=$TMPFILE
sed -f scr.sed $file | awk 'BEGIN{ FS = "\""; OFS = ""}{for(i=1;i<=NF;i++) if ( i%2) gsub(/,/,"|",$i); print}' > $cdate$file && to
uch /home/vbsdep/upperc/ALS6_XD/$cdate$file.OK
done
大家好~~ 小弟现在有一个问题 就是要实现一个功能 查看一些日志文件,如果文件中出现error字样,就产生报警信息。 请问这样要怎么实现呢? 是用sed命令么? 而且日志文件有很多,如果要批量执行的话需要怎么做呢? 报警信息我是用一个特定的命令,直接写入就可以了 问题是我不知道怎么实现文件中有匹配字符时触发条件。。。 希望大家多帮忙 谢谢。。。 我自己能想到的只是 while read logname do sed -n `/error/' $logname /...
两问题: 1、在SHELL程序里,如何读取指定文本文件里的一行内容进行其他处理,完后再读取下一行?即类似PERL里的FOREACH 2、有没有显示指定文件里指定某行内容的系统指令?
3049*.~1373659053*.~10668009*.~正确行内容*.~N*.~2008-03-07 10:57:50 3050*.~1373659053*.~10668009*.~出错行 内容*.~N*.~2008-03-07 10:57:50 3051*.~1373659053*.~10668009*.~正确行内容*.~N*.~2008-03-07 10:57:50 如上的一个非常大的留言文本 因为用户的内容里边含有不规范的 换行等字符, 我从数据库导出的时候,本来3050行应该 3050*.~1373659053*.~10668009*.~出错行内容*.~N*.~2008-03-07 10:57:50 ,现在导致成了...