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

[文本处理] win7系统bat复制前两月文件夹下的所有文件,代码怎么写?

我想9月要复制e:\外勤\前两月下所有文件(也就是9月复制e:\外勤\2015\07\ ),复制到f:\
请问老师,这个批处理文件怎么写?

本帖最后由 CrLf 于 2015-9-1 20:32 编辑
  1. @echo off
  2. set /a "y=%date:~,4%,m=1%date:~5,2%-2"
  3. if %m% lss 101 set /a y-=1,m+=12
  4. xcopy /y "e:\外勤\%y%\%m:~-2%\" f:\
  5. pause
复制代码

TOP

本帖最后由 回家路上 于 2015-9-1 20:52 编辑
  1. @echo off
  2. set /a "y=%date:~0,4%,m=1%date:~5,2%-102,b=!(m+(1+2*(m>>31))*m),y-=b,m+=b*12+100"
  3. xcopy /y /e "e:\外勤\%y%\%m:~-2%\" f:\
  4. pause
复制代码
人生是一部书/只有这一页最温暖/读懂它的时候/我们在远方流泪...

TOP

继续化简:
  1. @echo off
  2. set /a "m=1%date:~5,2%-102,t=!m|!~m,m+=100+t*12,y=%date:~,4%-t"
  3. xcopy /y "e:\外勤\%y%\%m:~-2%\" f:\
  4. pause
复制代码
1

评分人数

TOP

[未解决] 在线请教高手,win7系统bat复制前两月文件夹下的所有文件,代码怎么写?

回复 4# CrLf
2、3、4楼老师,你们好!测试提示无效路径。但是我的路径是正确的。文件夹是按日期命名的,2015下的07

TOP

  1. set /a "m=(1%date:~5,2%+5)%%12+101,y=%date:~,4%-m/111"
  2. echo;%y% %m:~-2%
复制代码
1

评分人数

    • CrLf: y=%date:~,4%-m/111技术 + 1

TOP

回复 6# terse
你好!我现在再xp测试,结果2015  07
我明天拿到w7系统测试看正确不 ?

TOP

[始终未解决] 在线请教高手,win7系统bat复制前两月文件夹下的所有文件,代码怎么写?

本帖最后由 7016427 于 2015-9-2 21:17 编辑

回复 1# 7016427
各位老师好!以下代码始终执行时,提示:找不到文件 — *.* ,复制了0个文件。 2015年07月份,执行完毕!
@echo off
set /a "y=%date:~,4%,m=1%date:~5,2%-2"
if %m% lss 101 set /a y-=1,m+=12
xcopy /y "e:\外勤\%y%\%m:~-2%\*.*" d:\
echo %y%年%m:~-2%月份%,执行完毕!
pause
平时创建目录是执行的如下批处理文件,是否错误与此有关?
@echo off
set /p d="创建日期目录: (注意日期格式:2015-05-01)"
md e:\外勤\%d%
pause

TOP

勿重复发帖
http://www.bathome.net/thread-37158-1-1.html
贴出你的“e:\外勤”文件夹下的截图
你的创建文件的格式与你顶楼“e:\外勤\2015\07\”并不一致
set /p d="创建日期目录: (注意日期格式:2015-05-01)"
md e:\外勤\%d%

TOP

【补充】 在线请教高手,win7系统bat复制前两月文件夹下的所有文件,代码怎么写?

回复 9# pcl_test
你好!在w7系统上,那个创建目录代码,如2015年07月05日创建的目录显示为e盘“外勤”下显示:2015、07、05,三个文件夹!

TOP

回复 10# 7016427

set /p d="创建日期目录: (注意日期格式:2015-05-01)"
md e:\外勤\%d%
如按提示格式2015-05-01输入,表示生成的是e:\外勤\2015-05-01,那么你的“e:\外勤”的文件夹结构是怎样的?截图看看,图片过大可发网盘分享链接
或者使用如下命令,把生成的txt文件用附件或网盘分享链接发出来
tree e:\外勤 /f >out.txt

TOP

回复 11# pcl_test
在w7系统上显示如图

TOP

回复 12# 7016427


xcopy /y /e "e:\外勤\%y%\%m:~-2%" d:\

TOP

回复 13# pcl_test
请问老师这里,参数“y”和“e”分别起什么作用?

TOP

回复 14# 7016427

xcopy /?
  /S           复制目录和子目录,不包括空目录。
  /E           复制目录和子目录,包括空目录。
  /Y           取消提示以确认要覆盖现有目标文件。
  /-Y          要提示以确认要覆盖现有目标文件。

TOP

返回列表