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

[文件操作] [已解决]BAT如何批量复制文件到指定目录下面?

本帖最后由 xxlaila 于 2015-7-21 13:53 编辑

我D:\盘有a.test.com.rar,b.test.com.rar,c.test.com.rar,d.test.com.rar。我用
  1. @echo off
  2. echo.
  3. echo.=====================================================================
  4. Setlocal Enabledelayedexpansion
  5. set FolderName=D:\FTP
  6. for /f "delims=" %%a in ('dir /b /a-d /oN "%FolderName%\*.*"') do (
  7. set d=%%a
  8. set c=!d:~0,-4!
  9. echo !c!
  10. )
  11. echo.
复制代码
文件显示出来了,
怎么把a.test.com.rar复制到D:\WEB\a.test.com\RAR
怎么把b.test.com.rar复制到D:\WEB\b.test.com\RAR

@echo off
Setlocal Enabledelayedexpansion
    set FolderName=D:\FTP
    for /f "delims=" %%a in ('dir /b /a-d /oN "%FolderName%\*.*"') do (
    set d=%%a
    set c=!d:~0,-4!
    echo !c!
    copy /y "%FolderName%\!c!" "D:\WEB\!c!\RAR\"
)

TOP

回复 2# DAIC

不能进行复制,目录下面是多个文件,不是一个

TOP

回复  DAIC

不能进行复制,目录下面是多个文件,不是一个
xxlaila 发表于 2015-7-4 17:57



    可以了! 我输出了日志,看到了,不好意思,少添加一个.rar
谢谢啊

TOP

@echo off
echo.
echo.=====================================================================
Setlocal Enabledelayedexpansion
set FolderName=D:\FTP
set PathName=d:\WwwRoot
for /f "delims=" %%a in ('dir /b /a-d /oN "%FolderName%\*.*"') do (
set d=%%a
set c=!d:~0,-4!
echo !c!
xcopy /y "%FolderName%\!c!.rar" "D:\WwwRoot\!c!\News\"
)
怎么能实现 复制的a.tet.com.rar 就启动a.bat  如果是b.test.com.rar  就启动b.bat   两个都复制了  a.bat和b.bat 都启动

TOP

  1. @echo off
  2. echo.
  3. echo.=====================================================================
  4. Setlocal Enabledelayedexpansion
  5. set FolderName=D:\FTP
  6. set PathName=d:\WwwRoot
  7. for /f "delims=" %%a in ('dir /b /a-d /oN "%FolderName%\*.*"') do (
  8.     set d=%%a
  9.     set c=!d:~0,-4!
  10.     echo !c!
  11.     xcopy /y "%FolderName%\!c!.rar" "D:\WwwRoot\!c!\News\"
  12.     if "!c!" equ "a.test.com" (
  13.         start "" "a.bat"
  14.     ) else if "!c!" equ "b.test.com" (
  15.         start "" "b.bat"
  16.     )
  17. )
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

  1. @echo off
  2. echo.
  3. echo.=====================================================================
  4. Setlocal Enabledelayedexpansion
  5. set FolderName=D:\FTP
  6. set PathName=d:\WwwRoot
  7. for /f "delims=" %%a in ('dir /b /a-d /oN "%FolderName%\*.*"') do (
  8.     set d=%%a
  9.     set c=!d:~0,-4!
  10.     echo !c!
  11.     xcopy /y "%FolderName%\!c!.rar" "D:\WwwRoot\!c!\News\"
  12.     if "!c!" equ "a.test.com" (
  13.         start "" "a.bat"
  14.     )
  15.     if "!c!" equ "b.test.com" (
  16.         start "" "b.bat"
  17.     )
  18. )
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

本帖最后由 xxlaila 于 2015-7-6 09:49 编辑

这个没能实现 复制的a.tet.com.rar 就启动a.bat  如果是b.test.com.rar  就启动b.bat   
如果a.tet.com.rar ,b.tet.com.rar ,c.tet.com.rar , 三个都复制了  a.bat和b.bat 、c.bat都启动,上面的那样写法只启动了b.bat 。其他都没有启动

TOP

回复 8# xxlaila
  1. @echo off
  2. echo.
  3. echo.=====================================================================
  4. Setlocal Enabledelayedexpansion
  5. set FolderName=D:\FTP
  6. set PathName=d:\WwwRoot
  7. for /f "delims=" %%a in ('dir /b /a-d /oN "%FolderName%\*.*"') do (
  8.     set d=%%a
  9.     set c=!d:~0,-4!
  10.     echo !c!
  11.     xcopy /y "%FolderName%\!c!.rar" "D:\WwwRoot\!c!\News\"
  12.     if "!c!" equ "a.test.com" (
  13.         start "" "a.bat"
  14.     )
  15.     if "!c!" equ "b.test.com" (
  16.         start "" "b.bat"
  17.     )
  18.     if "!c!" equ "c.test.com" (
  19.         start "" "c.bat"
  20.     )
  21. )
复制代码
1

评分人数

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

TOP

恩,可以了,谢谢,我在去生产环境测试测试 。3QY

TOP

@echo off
echo.
echo.=====================================================================
Setlocal Enabledelayedexpansion
set FolderName=D:\FTP
set PathName=d:\WwwRoot
for /f "delims=" %%a in ('dir /b /a-d /oN "%FolderName%\*.*"') do (
    set d=%%a
    set c=!d:~0,-4!
    echo !c!
    xcopy /y "%FolderName%\!c!.rar" "D:\WwwRoot\!c!\News\"
    if "!c!" equ "a.test.com" (
        start "" "a.bat"  >d:\log\a.log
    )
    if "!c!" equ "b.test.com" (
        start "" "b.bat"  >d:\log\b.log
    )
    if "!c!" equ "c.test.com" (
        start "" "c.bat"  >d:\log\c.log
    )
)

这样子不能记录脚本没执行的日志,请问怎么解决这个问题

TOP

返回列表