REM 取当前系统时间,可能因操作系统不同而取值不一样
set CURDATE=%date:~0,4%%date:~5,2%%date:~8,2%
set CURMON=%date:~0,4%%date:~5,2%
set CURTIME=%time:~0,2%
REM 小时数如果小于10,则在前面补0
if "%CURTIME%"==" 0" set CURTIME=00
if "%CURTIME%"==" 1" set CURTIME=01
if "%CURTIME%"==" 2" set CURTIME=02
if "%CURTIME%"==" 3" set CURTIME=03
if "%CURTIME%"==" 4" set CURTIME=04
if "%CURTIME%"==" 5" set CURTIME=05
if "%CURTIME%"==" 6" set CURTIME=06
if "%CURTIME%"==" 7" set CURTIME=07
if "%CURTIME%"==" 8" set CURTIME=08
if "%CURTIME%"==" 9" set CURTIME=09
set CURTIME=%CURTIME%%time:~3,2%%time:~6,2%
REM 设置所有者、用户名和密码
set OWNER=data//数据库名
set USER=name//数据库账号
set PASSWORD=pwd//数据库密码
set RAR_CMD="C:\Program Files\WinRAR\Rar.exe"//解压包安装路径
for /f "tokens=1,2" %%a in ('date/t') do set TODAY=%%a
REM 创建备份用目录,目录结构为oraclebak/YYYYMMDD/
if not exist "oraclebak" mkdir oraclebak
cd oraclebak
if not exist "%CURMON%" mkdir %CURMON%
set FILENAME=%CURMON%/%OWNER%_%CURDATE%_%CURTIME%
set EXPLOG=%CURMON%/%OWNER%_%CURDATE%_%CURTIME%
REM 调用ORACLE的exp命令导出用户数据
exp %USER%/%PASSWORD%@%OWNER% file=%FILENAME%.dmp log=%FILENAME%exp.log owner=%USER% grants=n
%RAR_CMD% a -df "%FILENAME%back.rar" "%FILENAME%.dmp" "%FILENAME%exp.log"
Exit
将以上内容复制到刚刚新建的bat文件中,保存好。