bat文件将子文件夹中的文件移动到当前文件夹
我正在寻找一个将子文件夹内的所有文件移动到父文件夹的.bat文件。bat文件将子文件夹中的文件移动到当前文件夹
实施例:
C:/games/nintendo/N/gamename/gamename.iso
我想运行,将其gamename.iso移动到文件夹N到是一个文件:
C:/games/nintendo/N//gamename.iso
感谢这么多的帮助:__)
set root_folder=C:\games
for /f "tokens=1* delims=" %%G in ('dir %root_folder% /b /o:-n /s ^| findstr /i ".iso" ') do (
move /y "%%G" "%%~dpG..\%%~nxG"
)
更新
这里的解释是:set root_folder=C:\games
- 我们'重新设置一个我们稍后会用到的变量;这是我们要开始扫描根文件夹
for /f
- 你可以在使用文档,通过键入命令提示符for /?
或本LINK
dir %root_folder% /b /o:-n /s
- 我们列出所有的文件/文件夹,通过使用/b
裸版格式的子文件夹; /o:-n
降序排序; /s
递推正走在文件夹结构
^| findstr /i ".iso"
- 我们正在通过管道|
所有信息,然后寻找包含.iso
的名字的事情。请注意,和转义字符^
需要
do (
- 对于每一个给输出在此操作实例请执行下列操作:
move /y
- 移动并在必要时覆盖/y
:
%%G
- 字符串,它是来自标准的输出。
%%~dpG
- d = drive letter
,输出字符串
..
p = path
的 - 这是当前文件夹
\%%~nxG
以上的文件夹 - n = filename
,x = extension
为使得输出相匹配的文件。
这是它会是什么样子扩展(因此将文件复制到C:\games\nintendo\N\
:
move /y "C:\games\nintendo\N\gamename\gamename.iso" "C:\games\nintendo\N\gamename\..\\gamename.iso"
请尝试解释更多有关如何以及为什么这项工作 – Markasoftware 2014-08-28 01:12:10
@Markasoftware加入 – Alex 2014-08-28 01:45:49
谢谢这太棒了:)! – Juan71287 2014-08-28 11:28:03
创建具有以下一个bat文件:
XCOPY C:/游戏/任天堂/ N/gamename C:/游戏/任天堂/ N/S/E
搜索在线...但没有什么我需要什么:(我对代码没有任何线索,所以我想我会问到这里的人谁实际上知道:) – Juan71287 2014-08-28 00:21:24