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

[文件操作] 【已解决】批处理如何将硬盘上所有Doc文档自动复制U盘指定文件夹?

本帖最后由 tangqingfu 于 2013-6-9 15:23 编辑

在一台Win 7+Office 2010的电脑上测试下面的代码(在Win XP+office 2003可以通过),运行后出现提示信息是:指定的路径无效
请教是什么原因,和系统及office版本有关吗?该如何解决?
  1. @echo off&setlocal enabledelayedexpansion
  2. rem 将硬盘上所有Doc文档自动复制U盘指定文件夹HDDoc中
  3. set ext=Doc
  4. for /f "skip=1" %%i in ('wmic logicaldisk where "drivetype='2'" get DeviceID') do set "up=%%i\"
  5. if not exist "%up%\HDDoc\" md "%up%\HDDoc\"
  6. for /f "skip=1" %%i in ('wmic logicaldisk where "drivetype='3'" get DeviceID') do set "exts=!exts! %%i\*.%ext%"
  7. >$t.em dir /s /b !exts! 2>nul
  8. for /f "delims=" %%i in ($t.em) do copy "%%i" "%up%\HDDoc"
复制代码
1

评分人数

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

回复 2# Batcher
Batcher兄的意思是否是:
将代码保存为名为“test”的bat文件,并将其置于C盘的盘符下?
然后点击“开始/运行”,输入“CMD”,在弹出的CMD窗口中输入“C:\test.bat”?
等明天上午测试后再向你汇报测试结果(能否请Batcher兄提前透露这样做有何用途?)

TOP

回复 5# terse

运行后好像提示“ff&不是内部命令或批处理程序”这样的内容。

TOP

回复 6# apang
  1. @echo off&setlocal enabledelayedexpansion
  2. rem 将硬盘上的指定类型Doc文件自动复制U盘指定文件夹HDDoc
  3. set ext=Doc
  4. for /f "delims=" %%i in ('wmic logicaldisk where "drivetype='2'" get DeviceID^|find ":"') do echo "%%~dpi"
  5. if not exist "%up%\HDDoc\" md "%up%\HDDoc\"
  6. for /f "skip=1" %%i in ('wmic logicaldisk where "drivetype='3'" get DeviceID') do set "exts=!exts! %%i\*.%ext%"
  7. >$t.em dir /s /b !exts! 2>nul
  8. for /f "delims=" %%i in ($t.em) do copy "%%i" "%up%\HDDoc"
复制代码
代码可以正常运行,但会将U盘的内容也复制过去,好像是全盘复制了。
不知如何修改,使之只交硬盘上的doc文档复制到U盘中(U盘中的doc文档不复制)?

Batcher兄的方法忘记测试,等明天再测试(实在不好意思)

TOP

回复 10# xxpinqz

能否请xxpinqz兄明示?

TOP

回复 10# xxpinqz
对于bat代码知之甚少,不知如何修改,能否请xxpinqz兄帮忙写个完整的代码?

TOP

回复 18# apang

谢谢apang兄的分享,测试通过!

TOP

回复 21# xxpinqz

18楼的代码测试通过,谢谢各位的关注及帮助!

TOP

回复 24# Batcher
惭愧,对于bat代码知之甚少,处于门外摸索、学习阶段。暂时无力理解,愧对各位了!

TOP

返回列表