我已经为sybase数据库制作了每日审核日志,但我需要使用“sed”命令从此日志中排除所有CREATE ALTER DROP表结果。
我做了一个扩展.sh dbtran -g命令来进行日常日志审计
有人可以帮助我吗?
date >> /root/startdbtran.txt
dbtran -g /data/testpotongdr/backup/backup/multimipspnew.log /data/testpotongdr/backup/dbtran/multimipspnew_`date --date='yesterday' '+%Y%m%d'`_tranlog.sql -j `date --date='yesterday' '+%Y%m%d'`
date >> /root/enddbtran.txt
sed -e '/dbping/d;/Trigger\|Attempting operation/s/--AUDIT/--TRIGAUDIT/g' /data/testpotongdr/backup/dbtran/multimipspnew_`date --date='yesterday' '+%Y%m%d'`_tranlog.sql |
sed -e '/--AUDIT/s/$/\nbeende_von_einem_netzwerk/g'|
sed -e '/Attempting operation\|BEGIN TRIGGER\|--AUDIT/,/Operation Succeeded\|\
Operation Failed\|END TRIGGER\|beende_von_einem_netzwerk\|^--COMMIT WORK/!d
s/TRIGAUDIT/AUDIT/g
/beende_von_einem_netzwerk/d' -e 's/^/--XAUDIT/g;s/--XAUDIT\(-*AUDIT\)/\1/g'| logger -i=
此语法的结果只是来自一天事务的日志,其中包含扩展名xxxxxx.log
在语法上,它使日志包括审计选项。这意味着所有操作包括CREATE,ALTER,DROP表和UPDATE / INSERT / DELETE记录。那么,使用SED排除CREATE,ALTER,DROP表和UPDATE / INSERT / DELETE记录的语法是什么?