Board logo

标题: [文件操作] 批处理如何将当前目录(包含子目录)所有图片剪切到E盘根目录文件夹下? [打印本页]

作者: sjsbaocheng    时间: 2012-8-3 12:41     标题: 批处理如何将当前目录(包含子目录)所有图片剪切到E盘根目录文件夹下?

求代码,需求如下:
                      1、在E盘根目录下,新建文件夹(以当天日期为名,例:12.08.03);
                      2、剪切U盘内(含子目录)所有图片,到步骤1建立的文件夹内。(注意:U盘盘符不定。)
作者: sjsbaocheng    时间: 2012-8-3 12:41

图片格式 JPG
作者: loquat    时间: 2012-8-3 16:13

  1. @echo off
  2. md e:\新建文件夹
  3. for /f %%a in ('dir /a-d /b /s "h:\*.jpg"') do (
  4. move %%a e:\新建文件夹\%%a
复制代码
不知道行不行,测试一下吧
先用copy测试,你懂的
作者: loquat    时间: 2012-8-3 16:18

先使用copy替换move测试命令,不要一上来就move了哦
作者: sjsbaocheng    时间: 2012-8-3 18:22

回复 3# loquat


    有2个问题啊,
   1、文件夹要以当天日期为名字,例:12.08.03
    2、U盘盘符不定。
作者: loquat    时间: 2012-8-3 19:43

1.第一个你就自己来解决,直接从这个例子里面领会
  1. set tm1=%time:~0,2%
  2. set tm2=%time:~3,2%
  3. set tm3=%time:~6,2%
  4. echo   %tm1%:%tm2%:%tm3%
  5. echo   %date%
复制代码
2.第二个U盘盘符的问题,我真的不太清楚,我也是新手。
或者你可以用set手动输入U盘盘符
  1. @echo off
  2. set /p 我的U盘盘符=
  3. md e:\新建文件夹
  4. for /f %%a in ('dir /a-d /b /s "%我的U盘盘符:\*.jpg"') do (
  5. move %%a e:\新建文件夹\%%a
复制代码

作者: apang    时间: 2012-8-3 21:53

  1. @echo off&setlocal enabledelayedexpansion
  2. set d=!date:~2,8!&set d=!d:/=.!&set d=!d:-=.!
  3. md e:\!d! 2>nul
  4. for /f "delims=" %%a in ('wmic logicaldisk where ^(drivetype^="2"^) get deviceid^|find ":"') do (
  5.   set drv=%%a
  6.   for /f "delims=" %%b in ('dir /a-d /b /s "!drv:~,2!\*.jpg"') do (
  7.     move "%%b" e:\!d!\
  8.   )
  9. )
  10. pause
复制代码

作者: 冷玉公子    时间: 2012-8-3 22:19

为什么这么典型事情竟然没有用 For /R 。
  1. @Echo Off
  2. For /R 目录 %%A In (*.jpg) Do Move /Y %%A E:\
  3. Pause>Nul
复制代码

作者: loquat    时间: 2012-8-3 23:04

  1. @echo off
  2. set date1=%date:~2,2%
  3. set date2=%date:~5,2%
  4. set date3=%date:~8,2%
  5. set dot="."
  6. md e:\%date1%%dot%%date2%%dot%%date3%
  7. set /p 我的U盘盘符=
  8. for /f %%a in ('dir /a-d /b /s "%我的U盘盘符:\*.jpg"') do (
  9. move %%a e:\%date1%%dot%%date2%%dot%%date3%\%%a
复制代码
很弱的代码,重在参与




欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2