Bir betik değiştirmek için komut dosyası tarafından oluşturulan günlük dosyaları, bir dize için grep, sonra dize bulunursa mailx aramak için arıyorum.dize için bash grep günlük dosyası daha sonra mailx
Aşağıdaki komut dosyasından, yalnızca tüm günlükler yerine satırların döndüğü günlükleri göndermek istiyorum. Günlük 35+ veritabanı günlüktir.
sahte kod:
if grep TOTAL $REPORTS/${ORACLE_SID}_Tablespace.log
then
mail -s "$ORACLE_SID Tablespace Alert" `cat $ORAMAIL/dba_list` < \
$REPORTS/${ORACLE_SID}_Tablespace.log
fi
begin script:
. /u01/app/oracle/oraconfig/Oracle.env.new.vars
echo "$0 execution started "`date`
for NAME in `cat $ORACONFIG/dbname.list`
do
ORACLE_SID=$NAME
export ORACLE_SID
sqlplus '/ as sysdba' <<EOF > $REPORTS/${ORACLE_SID}_Tablespace.log 2>&1
@$TOOLS/chk_tablespace.sql
EOF
TODAY=`date +%Y-%m-%d`
mail -s "$ORACLE_SID Tablespace Alert" `cat $ORAMAIL/dba_list` < \
$REPORTS/${ORACLE_SID}_Tablespace.log
done
echo "$0 execution completed "`date`
SO için yeni görünüyorsunuz. Cevapları test ettikten sonra, bir sorunun çözüldüğünü düşünüyorsanız, lütfen yeşil onay işaretini tıklayarak 'kabul edildi' olarak işaretleyin. Bu, hala cevapları olmayan eski SO sorularına odaklanmaya yardımcı olur. –