我正在尝试编写脚本来进行数据库备份。备份脚本如下 -在shell脚本中按顺序执行命令并延迟执行下一条语句
$LOG_TIME=`date +%T`
$LOG=/home/developer/backup.log
echo $LOG_TIME "::Backup Started">>$LOG;
su - oracle -c "exp username/password file=~/db_exp.dmp log=db_exp.dmp";
echo $LOG_TIME "::Backup End">>$LOG;
我的代码是完美的补充备份。但是,当我检查db_exp.dmp
文件,我发现 -
14:25:33 :: Backup Started
14:25:33 :: Backup End
我的问题是这里的两线“备份开始”和“备份结束”打印在同一时间,而它需要几秒钟(约40〜 50)进行备份。我想打印备份完成时的实际时间。我已经尝试了几件事情 - 使用&&
;用分号(;
)和if
声明一样 -
if backup_command; then
echo $LOG_TIME ":: Backup End";
fi
但没有为我工作。我不想在这里使用sleep
,因为它不能让我完成数据库备份的实际时间。
'$ LOG_TIME'值设置一次。您必须为结束日期调用新的'date'命令。 – SLePort