返回列表 发帖

50元(支付宝)求助批处理如何在硬盘中筛选出txt中所列的文件夹。

工作上遇到了这个问题,硬盘其实是指路由上的服务器,但是我也可以把它添加网络位置并加载进虚拟盘。

网上查阅了很多资料,目前可行的代码是
@echo off
set "share=192.168.1.7\查询目录"
set "fd=文件名"
for /f "delims=" %%a in ('dir /ad /b /s "%share%\%fd%?"') do (
        if /i "%%~nxa" == "%fd%" (
                xcopy /s /h /c /y "%%a\*" "E:\new\"
        )
)
pauseCOPY
但是这个代码只能使用文件名一项一项的查找,而且查找的是所有的子文件(若有重复命名的则直接覆盖了)

而我需求的是查询txt中相关命名的文件夹(包括文件夹下的文件)

请求批处理的方式有没有什么方法能做到,不甚感激!

并没有说得很清楚

而我需求的是查询txt中相关命名的文件夹(包括文件夹下的文件)
是什么意思?
下载安装python3 https://www.python.org/downloads/ 代码存为xx.py 双击运行或IDLE打开F5运行

TOP

本帖最后由 terse 于 2015-11-17 19:03 编辑

你希望怎么处理重复文件夹
@echo off & setlocal enabledelayedexpansion
set "share=192.168.1.7\查询目录"
set "fd=文件名"
for /f "delims=" %%a in ('dir /ad /b /s "%share%\%fd%?"') do (
        if /i "%%~nxa" == "%fd%" (
                set /a n+=1
                xcopy /s /h /c /y "%%a" "E:\new\%fd%_!n!\"
        )
)
pauseCOPY

TOP

回复 3# terse

文件名那里我是想用一个txt列表,把要查找的文件名关键字都列出来。
同时如果有重复的文件,那么优先找出在关键字为“主图”文件夹下的文件。。   
最后把这些文件都重新复制到以这个文件名关键字命名的新文件夹中。

TOP

返回列表