标题: 【已解决】只知道文件夹名的一部分,如何移动文件夹
[打印本页]
作者: fly2love
时间: 2010-6-3 15:19
标题: 【已解决】只知道文件夹名的一部分,如何移动文件夹
假设文件夹名字为
e:\test1234fdsafdsfdsgdag
里面的内容为:
1.txt,2.bmp,3.jpg
只知道test1234,如何移动这整个文件夹及其下面的文件了?
move e:\test1234* f:\
这条因为 move 不支持通配符,所以不行
xcopy e:\test1234* f:\ /s
这条只能够复制空的文件夹,不能够复制整个文件夹的内容
[
Last edited by fly2love on 2010-6-3 at 16:22 ]
作者: Hanyeguxing
时间: 2010-6-3 15:59
第一:move 支持通配符,但不允许跨分区移动目录文件夹。
第二:不要总想着*这个字符。*不是万能的。
1,使用findstr匹配该目录:
@echo off
for /f "delims=" %%a in ('dir /b/ad e:^|findstr /b /i "test1234"') do xcopy e:\%%i f:\ /s
2,使用if匹配该目录:
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir /b/ad e:') do set a=%%a&if "!a:~0,8!"=="test1234" xcopy e:\%%i f:\ /s
[
Last edited by Hanyeguxing on 2010-6-3 at 16:02 ]
作者: fly2love
时间: 2010-6-3 16:12
恩,我是菜鸟,所以只想着通配符。
findstr 方法比较好,因为test1234如果不在文件夹名字的前面,即不知道整个字符串的具体位置的话,会 比较麻烦。
学习到了 | 管道命令的使用,其实在回复前,我已经想出了办法,由于dir 命令是支持通配符的,俺先dir 输出到一个文件,然后从文件中得到文件夹得名字。
土了,又学到一招管道的操作!
谢谢楼主,可以结贴!
Quote: |
Originally posted by Hanyeguxing at 2010-6-3 15:59:
第一:move 支持通配符,但不允许跨分区移动目录文件夹。
第二:不要总想着*这个字符。*不是万能的。
1,使用findstr匹配该目录:[code]@echo off
for / ... |
|