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

[其他] [已解决]能调用计算机名,不能自动以计算机名创建文件夹?

大家好!
因为我们要进行live mail备份,也就是把各用户D盘的live mail文件夹复制到172.168.160.34这台电脑的共享文件夹内进行备份。请教下,我能不能调用计算机名并自动创建以该计算机名命名的文件夹来代替原来的用户文件夹,并在里面自动建立日期文件夹(星期一,星期二。。。等),再进行备份到该日期文件夹里。比如:set dir2=\\172.168.160.34\共享软件\wqr\中的 wqr 能不能用自动创建的计算机名文件夹进行替代?
这样做是因为我们局域网有100多个用户,如果一个一个用户在bat里面手动建立用户夹,有点麻烦!
麻烦大家帮我看看应该添加怎么样的代码才能实现,谢谢!
  1. @echo off
  2. taskkill /im wlmail.exe /f
  3. color 8f
  4. mode con cols=60 lines=12
  5. title Live 邮件备份
  6. :--------------------------------
  7. set dir1=d:\live mail
  8. set dir2=\\172.168.160.34\共享软件\wqr\
  9. :set dir1=C:\0116
  10. :--------------------------------
  11. set week=%date:~11,6%
  12. rd /s /q "%dir2%%week%"
  13. set dir2=%dir2%%week%\
  14. title Live 邮件备份@%date%
  15. goto %week%
  16. :--------------------------------
  17. :星期一
  18. :星期二
  19. :星期三
  20. :星期四
  21. :星期五
  22. echo 你好,今天是%week%,准备备份邮件……
  23. title Live 邮件备份@%date%^|进行中..@%time%
  24. goto backup
  25. :--------------------------------
  26. :backup
  27. echo.
  28. echo 复制文件(%COMPUTERNAME%,%USERNAME%):
  29. echo 从: %dir1%
  30. echo 到: %dir2%
  31. echo xcopy "%dir1%" "%dir2%"
  32. xcopy "%dir1%" "%dir2%" /S /E /Y
  33. echo.
  34. echo 邮件备份完成@%time%.
  35. title Live 邮件备份@%date%^|完成@%time%
  36. :--------------------------------
复制代码

[ 本帖最后由 dong1977 于 2009-6-10 15:41 编辑 ]
1

评分人数

    • Batcher: 感谢主动给标题标注[已解决]字样PB + 2

本版规则
1、求代码、寻求代码解释、探讨代码得失的帖子均可发在本版块,其余话题禁止在本版讨论;
2、求助时,务必在顶楼一次性把问题交代清楚;若文字难以表述,请配图说明,或是上传附件;但是,一切操作应从节约论坛资源的角度出发,能文字说明清楚的就无需再发图片,小图能说明问题的尽量不截全图,在不影响效果的前提下尽量压缩图片及附件;
3、所发代码若不止一行,请务必用code标记把代码部分首尾括起来,以便他人复制;


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

TOP

我只会用计算机名创建文件名不会用日期创建

for /f %%i in (d:\1.txt) do md d:\\客户机备份%%i\wqr\  & xcopy /e/y %%i\共享软件\wqr\ *.*   d:\\客户机备份%%i\wqr\   
这个命令是在服务器上往回复制客户机的
1.txt中的内容是:
\\A01
\\A02
...
.
.\\A100

TOP

小弟初学,尝试写另一个在客户端运行的,请教大牛,这里是否要启用变量延迟,我没有启用测试是反是正常的
  1. @echo off
  2. REM 第一个循环获取客户端计算机名
  3. REM 第二个循环获取当前日期(只截取后面星期几部分),并进行copy
  4. for /f "delims== tokens=2" %%i  in ('set COMPUTER') do (
  5.          for /f "tokens=2" %%j in ('date /t') do xcopy "d:\live mail" \\172.168.160.34\共享软件\wqr\%%i\%%j
  6. )
复制代码
1

评分人数

TOP

谢谢!

问题解决了

TOP

回复 5楼 的帖子

问题解决了,请在标题上加注【已解决】
(*^_^*)

TOP

返回列表