# .bash_profile
### 这里是提取用户的变量
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
.
~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/10g
export ORACLE_SID=orcl
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
export SHELL_DIR=/u01/scripts
del_seq=`ls /u01/arch/|head -1|cut -f2 -d_`
echo $del_seq
$ORACLE_HOME/bin/sqlplus -s "sys/oracle@orcl as sysdba"
set head off;
set feedback;
select max(sequence#) from v\$archived_log where applied='YES';
## 这里我找出已经应用的最大归档文件
\$
转义了$
exit;
eof
max_sn=`cat /u01/scripts/max_sn.log|awk '{print $1}'|grep ^[0-9]`
max_sn=`expr $max_sn - 10`
## 我这里是保留最近的10个已经应用归档文件,这个具体情况自己决定
echo $max_sn
while [ $del_seq -lt $max_sn ]
do
rm
-f /u01/arch/1_"$del_seq"_
732454468
.dbf
##
这里是我定义归档文件的格式,具体根据自己的归档文件格式来匹配,关键是匹配日志的sequence no。
del_seq=`expr
$del_seq + 1`
echo
$del_seq
done
## 脚本里的红色部分根据自己的情况进行修改
在此忠诚的感谢各位技术达人可以在网络上共享自己的经验,让我们这些学习者有更多的学习机会。忠诚的感谢,在此我也会把自己的学习成果和技术文档给大家一起分享一起学习。