[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理如何引用变量并写入日志?

需求:

1. 服务器利用批处理做文件备份,通过rsync命令,需要知道命令执行开始,结束时间,并把开始和结束时间写入到邮件内容里
2. 利用blat发送邮件,将rsync日志以附件形式发送邮件
3. 如果能把rsync日志放到邮件内容里更好,不过目前不知道如何实现。

批处理文件如下:
  1. :: Get the start time
  2. echo %time:~0,8% %date:~0,10%
  3. rsync -avrt -i --log-file="c:\server_backup\rsync.log "/cygdrive/d/temp" rsync@192.168.0.1:/data/backup/"
  4. cd C:\Program Files (x86)\blat311\full\
  5. blat install -server mailserver:25 -f backup@domain.com -to username@domain.com -subject "%time:~0,8% %date:~0,10% Rsync log"  -attach c:\server_backup\rsync.log
  6. :: Get the end time
  7. echo %time:~0,8% %date:~0,10%
复制代码
现在想知道,如何在blat发邮件的时候,把开始和结束时间记录到邮件内容里?
另外如何把rsync的日志文件rsync.log以邮件内容形式发送?
还有:如何在rsync的日志文件名后面加上当前日期?

谢谢,明白了。
看来还有很多基础知识需要去学。

TOP

回复 8# smallfish


    斜线
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

是因为有空格的缘故?

TOP

回复 6# smallfish


    现在知道原因了吗?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

echo 17:01:55 06/08/2013

TOP

回复 4# smallfish

    把2楼第4行echo命令的结果贴出来看看
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

试了一下,加上日期后执行rsync居然不能生成日志,提示文件路径找不到,但是把后面的日期命令删除直接定义rsync.log就可以。不知道为什么,还是简单点好,呵呵

TOP

非常感谢!原来这么简单,我试试!
看来批处理写的好的话也很方便哦,功能强大!

TOP

如何在rsync的日志文件名后面加上当前日期?
  1. set "logfile=c:\server_backup\rsync_%date:~0,10%.log"
  2. :: Get the start time
  3. echo %time:~0,8% %date:~0,10%
  4. rsync -avrt -i --log-file="%logfile% "/cygdrive/d/temp" rsync@192.168.0.1:/data/backup/"
  5. cd /d "C:\Program Files (x86)\blat311\full\"
  6. blat install -server mailserver:25 -f backup@domain.com -to username@domain.com -subject "%time:~0,8% %date:~0,10% Rsync log"  -attach "%logfile%"
  7. :: Get the end time
  8. echo %time:~0,8% %date:~0,10%
复制代码

TOP

返回列表