. : : ClassiClub ForuM : : .

会员中心 论坛帮助 日历事件 标记论坛已读
返回   精品技术论坛 » 技术论坛 » 『软件使用』

『软件使用』: 电脑软件推荐, 电脑软件使用, 经验分享



发表新主题 关闭主题
 
主题工具
黑菜
 
黑菜 的头像
热心会员
 
资 料:
注册日期: Oct 2009
帖子: 3,214 声望值: 5
精华: 11,解答: 11
#1 旧 2011-09-22, 10:49:39 默认 已解答: 【求助】批处理,能否做到定时转移文件?求教
黑菜 当前离线  

希望实现:D盘下有很多人名的目录,把他们下级目录及文件,全部move到其他盘符下,并追加个转移当时的年月日文件夹,其下级目录及文件不变。


例:

D:\张三\工作日志\联系人.xls
D:\张三\工作日志\数据.xls
D:\张三\参数记录.xls
D:\李四\重要文档\客户.xls
D:\李四\档案.xls


每天17:20定时把D盘每个人名文件夹剪切到E盘,变成如下格式:


E:\待删除备份\张三\20110922\工作日志\联系人.xls
E:\待删除备份\张三\20110922\工作日志\数据.xls
E:\待删除备份\张三\20110922\参数记录.xls
E:\待删除备份\李四\20110922\重要文档\客户.xls
E:\待删除备份\李四\20110922\档案.xls


目的,每天自动清空D盘,转移到E盘后再保留一段日期。
最佳解答为:samson88
set bdate=%date:~0,4%%date:~5,2%%date:~8,2%
for /f %i in ('dir d:\ /ad/b') do echo d | xcopy "d:\%i" E:\待删除备份\%bdate%\%i /s
rd /s/q d:\%i && md d:\%i

for /f %i in ('dir d:\ /ad/b') 这样写只是在假设d:\下只有这些人名目录存在的前提下
funnyPC
 
funnyPC 的头像
『手机数码』版主
 
资 料:
注册日期: Oct 2003
帖子: 8,100 声望值: 4
精华: 13,解答: 23
#2 旧 2011-09-22, 12:36:17 默认
funnyPC 当前离线  

批处理写好拖到计划任务中,设置时间即可。
黑菜
 
黑菜 的头像
热心会员
 
资 料:
注册日期: Oct 2009
帖子: 3,214 声望值: 5
精华: 11,解答: 11
#3 旧 2011-09-22, 20:24:03 默认
黑菜 当前离线  

回LS,关键这要求的批处理代码不会写~~~
samson88
 
samson88 的头像
热心会员
 
资 料:
注册日期: May 2002
帖子: 2,314 声望值: 2
精华: 2,解答: 37
#4 旧 2011-09-22, 21:14:19 默认
samson88 当前离线  

set bdate=%date:~0,4%%date:~5,2%%date:~8,2%
for /f %i in ('dir d:\ /ad/b') do echo d | xcopy "d:\%i" E:\待删除备份\%bdate%\%i /s
rd /s/q d:\%i && md d:\%i

for /f %i in ('dir d:\ /ad/b') 这样写只是在假设d:\下只有这些人名目录存在的前提下


在中国,有什么事情解释不了的,一想到“”字就迎刃而解了。
黑菜
 
黑菜 的头像
热心会员
 
资 料:
注册日期: Oct 2009
帖子: 3,214 声望值: 5
精华: 11,解答: 11
#5 旧 2011-09-27, 09:49:34 默认
黑菜 当前离线  

引用:
作者: samson88 查看帖子
set bdate=%date:~0,4%%date:~5,2%%date:~8,2%for /f %i in ('dir d:\ /ad/b') do echo d | xcopy "d:\%i" E:\待删除备份\%bdate%\%i /srd /s/q d:\%i && md ......

我试了下,脚本运行不起来啊
黑菜
 
黑菜 的头像
热心会员
 
资 料:
注册日期: Oct 2009
帖子: 3,214 声望值: 5
精华: 11,解答: 11
#6 旧 2011-09-27, 10:26:27 默认
黑菜 当前离线  

提示此时不应该有/ad/b

谁能帮忙修正下吗。谢谢

此帖于 2011-09-27 11:10:22 被 黑菜 编辑. .
黑菜
 
黑菜 的头像
热心会员
 
资 料:
注册日期: Oct 2009
帖子: 3,214 声望值: 5
精华: 11,解答: 11
#7 旧 2011-09-27, 16:55:17 默认
黑菜 当前离线  

哪位大侠帮我看看~~~~~~急着等着啊
aspirer
 
aspirer 的头像
支柱会员
 
资 料:
注册日期: Feb 2011
帖子: 4,748 声望值: 4
精华: 1,解答: 18
#8 旧 2011-09-27, 17:40:11 默认
aspirer 当前离线  

代码:
  for /f "tokens=*" %i in ('dir /ad /b "C:\Test"') do xcopy "C:\Test\%i" C:\backup\%i /S /Y
samson88
 
samson88 的头像
热心会员
 
资 料:
注册日期: May 2002
帖子: 2,314 声望值: 2
精华: 2,解答: 37
#9 旧 2011-09-27, 21:35:04 默认
samson88 当前离线  

引用:
作者: 黑菜 查看帖子
我试了下,脚本运行不起来啊
在批处理中 for 里的%要变成%%

set bdate=%date:~0,4%%date:~5,2%%date:~8,2%
for /f %%i in ('dir d:\ /ad/b') do echo d | xcopy "d:\%%i" E:\待删除备份\%bdate%\%%i /s && rd /s/q d:\%%i && md d:\%%i

此帖于 2011-09-27 21:42:27 被 samson88 编辑. .
黑菜
 
黑菜 的头像
热心会员
 
资 料:
注册日期: Oct 2009
帖子: 3,214 声望值: 5
精华: 11,解答: 11
#10 旧 2011-09-28, 09:08:57 默认
黑菜 当前离线  

引用:
作者: samson88 查看帖子
在批处理中 for 里的%要变成%%set bdate=%date:~0,4%%date:~5,2%%date:~8,2%for /f %%i in ('dir d:\ /ad/b') do echo d | xcopy "d:\%%i" E:\待删除备份\%bdate%\%%i /s &&......
非常感谢,测试了能通过。


不过我发现一个问题,我原先那些文件夹都建立过共享、安全里的权限。这样rd删除过后就没了。有没有办法move走,不是xcopy再rd。


目前权限是这样在设置的(系统是WIN2003):
上传的图像
文件类型: jpg 1.jpg (69.2 KB, 55 次查看)
文件类型: jpg 2.jpg (46.7 KB, 55 次查看)

此帖于 2011-09-28 09:37:21 被 黑菜 编辑. .
黑菜
 
黑菜 的头像
热心会员
 
资 料:
注册日期: Oct 2009
帖子: 3,214 声望值: 5
精华: 11,解答: 11
#11 旧 2011-09-28, 10:01:24 默认
黑菜 当前离线  

@echo off
set bdate=%date:~0,4%%date:~5,2%%date:~8,2%
for /f %%i in ('dir d:\ /ad/b') do echo d | xcopy "d:\%%i" E:\待删除备份\%bdate%\%%i /s && rd /s/q d:\%%i && md d:\%%i && net share %%i=D:\%%i /grant:%%i,full && echo Y|cacls d:\%%i /t /e /c /g %%i:F
pause


我研究了下,写成这样了
问题出现在,文件夹是中文名字,系统中建立的账户全为拼音全拼的。这样一来,%%i就不能替换为姓名了。全部重新建立改为中文账户又不太现实。这可咋整


要是批处理里能MOVE文件及子目录就好了。不要动共享和安全权限了

此帖于 2011-09-28 10:58:14 被 黑菜 编辑. .
samson88
 
samson88 的头像
热心会员
 
资 料:
注册日期: May 2002
帖子: 2,314 声望值: 2
精华: 2,解答: 37
#12 旧 2011-09-28, 10:38:52 默认
samson88 当前离线  

引用:
作者: 黑菜 查看帖子
[CODE]@echo offset bdate=%date:~0,4%%date:~5,2%%date:~8,2%for /f %%i in ('dir d:\ /ad/b') do echo d | xcopy "d:\%%i" E:\待删除备份\%bdate%\%%i /s &&......
net user zhengjie "郑洁"
黑菜
 
黑菜 的头像
热心会员
 
资 料:
注册日期: Oct 2009
帖子: 3,214 声望值: 5
精华: 11,解答: 11
#13 旧 2011-09-28, 10:42:10 默认
黑菜 当前离线  

引用:
作者: samson88 查看帖子
net user zhengjie "郑洁"
这句是什么意思?改zhengjie密码?
神奇四侠
 
神奇四侠 的头像
热心会员
 
资 料:
注册日期: Feb 2011
帖子: 368 声望值: 3
精华: 0,解答: 3
#14 旧 2011-09-28, 10:53:47 默认
神奇四侠 当前离线  

引用:
作者: 黑菜 查看帖子
这句是什么意思?改zhengjie密码?
是的,不过我好像没用过汉字当密码过。
黑菜
 
黑菜 的头像
热心会员
 
资 料:
注册日期: Oct 2009
帖子: 3,214 声望值: 5
精华: 11,解答: 11
#15 旧 2011-09-28, 10:59:30 默认
黑菜 当前离线  

晕。我不是要改密码啊。

没理解我的意思啊,请看我11楼说的,我再截个图配合说明。

因为%%i替换后为目录名的,可是系统里只有拼音缩写的帐户(实际情况全部重新建立改为中文账户又不太现实。)


就出现“帐户名和安全标示间无任何映射完成。”




弱弱的问句:批处理有没有办法把中文变成拼音的?

或者有没有move文件的办法,那就不用rd再md再share了
上传的图像
文件类型: jpg 333.jpg (95.4 KB, 51 次查看)

此帖于 2011-09-28 11:09:55 被 黑菜 编辑. .
发表新主题 关闭主题

主题工具

论坛规则  发帖规则
不可以发表主题
不可以回复帖子
不可以上传附件
不可以编辑自己的帖子
论坛启用 vB 代码
版面启用 表情符号
版面启用 [IMG] 代码
版面禁用 HTML 代码


所有时间均为北京时间, 现在的时间是 10:29:01.

本论坛带宽由迅通网络提供
SSL证书由TrustAsia提供

Copyright © 2000 - 2019 ClassiClub Forum All Rights Reserved.
粤ICP备09123456号