标题: [文件操作] 批处理如何只复制某路径下所有子路径内的文件到别处? [打印本页]
作者: ednykissyou 时间: 2022-2-9 03:28 标题: 批处理如何只复制某路径下所有子路径内的文件到别处?
伤心了,原来这对我来说很难:只复制某路径下所有子路径内的文件到别处
我原以为,复制C:\this 下不确定文件夹下的所有子文件到 D:\that路径下。
只需这样:- xcopy C:\this\*.* D:\that /s
复制代码
哪想,this下所有子文件夹全考过去了。(伤心了,我不要文件夹啊,我想将所有子文件直接放在D:\that 下)
网上找了好多,也看过robocopy,发现写的都是复制文件夹,没有只复制子路径下的文件的
老师们帮看一下。
谢谢~
作者: ednykissyou 时间: 2022-2-9 04:32
本帖最后由 ednykissyou 于 2022-2-9 04:37 编辑
发现了个这个,能把当前目录的子文件提取到当前。直接就剪掉了。
不知咋改成我要的某个目录下子文件考到指定目录- ::【批处理功能】将当前目录内所有子目录中的文件拷贝到当前目录下。
- @echo off
- FOR /F "usebackq delims==" %%i IN (`dir /s /ad /b`) DO @copy "%%i"\*.* .\ && set /a js+=1
- echo 共移动了%js%个文件
- set /a js=0
- pause
复制代码
------------------------------------------------
还发现了这个,也是神乎乎的看不懂,不知我的路径要咋加入
https://www.cnblogs.com/miketwais/p/bat_xcopy.html
---------------------------------------------------------
bat复制文件夹下所有文件到另一个目录
一个需求,网上了半天都是错了,所以记一下吧,方便你我。
copy是文件拷贝,文件夹拷贝需要用到xcopy
- @echo off
- ::当前盘符
- set curPath=%cd%
- set digPath ="%curPath%tool\dig"
- set PATH=%PATH%;%digPath%
- wmic ENVIRONMENT where "name='path' and username='<system>'" set VariableValue="%path%;%curPath%tool\dig"
- ::copy库文件
- if /i "%PROCESSOR_IDENTIFIER:~0,3%" == "X86" goto 1
- if /i "%PROCESSOR_IDENTIFIER:~0,3%" NEQ "X86" goto 2
- :1 /////32位
- xcopy %curPath%winpcap\win32\dll\* %systemroot%\System32\ /s/e/y
- xcopy %curPath%winpcap\win32\config\* %systemroot%\System32\drivers\ /s/e/y
- ::pause
- exit
- :2 /////64位
- echo %curPath%winpcap\win64\dll\win32
- xcopy %curPath%winpcap\win64\dll\win32\* %systemroot%\System32\ /s/e/y
- xcopy %curPath%winpcap\win32\config\* %systemroot%\System32\drivers\ /s/e/y
- xcopy %curPath%winpcap\win64\dll\win64\* %systemroot%\SysWOW64\ /s/e/y
- ::pause
- exit
复制代码
作者: qixiaobin0715 时间: 2022-2-9 09:14
- cd /d "C:\this"
- for /f "delims=" %%i in ('dir /s /b /ad') do copy "%%i\*.*" "D:\that"
复制代码
作者: Batcher 时间: 2022-2-9 09:39
回复 1# ednykissyou - @echo off
- for /f "delims=" %%i in ('dir /b /s /a-d "C:\this"') do (
- copy /y "%%i" "D:\that"
- )
复制代码
作者: ednykissyou 时间: 2022-2-9 13:14
本帖最后由 ednykissyou 于 2022-2-9 13:16 编辑
回复 4# Batcher
你好,这个会一起复制this当前目录里的文件。
我只想椱制this下的子文件夹里的文件
还是要cd /d "C:\this"
的
作者: ednykissyou 时间: 2022-2-9 13:17
qixiaobin0715 发表于 2022-2-9 09:14
回复 3# qixiaobin0715
谢谢,试了下,对了。
作者: Batcher 时间: 2022-2-9 15:25
回复 5# ednykissyou
从1楼的描述来看,确实没有发现这个要求。
4楼代码改成这样试试:- @echo off
- for /f "delims=" %%i in ('dir /b /s /a-d "C:\this" ^| findstr -r C:\\this\\.*\\') do (
- copy /y "%%i" "D:\that"
- )
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |