标题: [文件操作] 批处理如何复制目录下的文件夹及全部TXT文件到指定目录? [打印本页]
作者: alick 时间: 2022-4-15 00:09 标题: 批处理如何复制目录下的文件夹及全部TXT文件到指定目录?
各位老师,请帮帮忙
需要将D:\ddr\???\下(保包子目录下)的全部txt文件复制到\\192.168.10.222\A33\,该如何实现呢?
???表示不明确目标文件夹
实现后结果为
\\192.168.1.222\A33\???\*.TXT(所有的txt文件全部保存到服务器上的???文件夹下面)
感谢各位老师,谢谢!!!!!
作者: went 时间: 2022-4-15 20:37
本帖最后由 went 于 2022-4-15 20:41 编辑
test.bat
ansi编码,修改4-5行- @echo off & cd /d "%~dp0"
- setlocal enabledelayedexpansion
- REM 源目录和目标目录
- set "src_dir=F:\code"
- set "dest_dir=\\172.28.176.1\123"
- for /d %%i in ("%src_dir%\*") do (
- pushd "%%i"
- for /r %%a in (*.txt) do (
- set "line=#%%a"
- for /f "delims=" %%b in ("!line:#%src_dir%=%dest_dir%!") do (
- mkdir "%%~dpb" 2>nul
- echo %%a
- echo %%b
- copy /y "%%a" "%%b"
- echo -------------
- )
- )
- popd
- )
- pause&exit
复制代码
作者: alick 时间: 2022-4-16 10:41
回复 2# went
老师,你好
不需要子目录结构,只需要第一层目录,然后下面就是TXT文件,可以实现吗?
作者: went 时间: 2022-4-16 21:14
回复 3# alick
如果有不同文件夹的同名txt则会直接覆盖掉- @echo off & cd /d "%~dp0"
- REM 源目录和目标目录
- set "src_dir=F:\code"
- set "dest_dir=\\172.28.176.1\123"
- for /d %%i in ("%src_dir%\*") do (
- pushd "%%i"
- for /r %%a in (*.txt) do (
- for /f "delims=" %%b in ("%src_dir%") do (
- if not exist "%dest_dir%\%%~nxb" mkdir "%dest_dir%\%%~nxb"
- echo %%a
- echo %dest_dir%\%%~nxb\%%~nxa
- copy /y "%%a" "%dest_dir%\%%~nxb\%%~nxa"
- echo ---------------
- )
- )
- popd
- )
- pause&exit
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |