[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 【已解决】如何将指定目录下多个子文件夹里的相同扩展名的文件移动到同一个文件夹里?

本帖最后由 ttrrf 于 2017-1-14 14:02 编辑

在同一个文件夹下移动文件
是这样的,比如在app文件夹下面有文件夹名为:1,2,3,4,5...10这几个文件夹。而每个文件夹里面又是1.apk,2.apk,3.apk,4.apk.....10.apk。而我的目的是把这些个apk文件移动出来,统一放在比如app0这个文件夹里面。也不一定是apk文件,只要后缀名相同的都可以。谢谢大神们给个批处理代码。这个对于你们很简单吧。谢谢
解决代码:
@echo off
color 1a
@echo 为了方便反编译apk,首先要处理一下。。。
set "DstFolder=app"
if not exist "%DstFolder%\" (
    md "%DstFolder%"
)
for /f "delims=" %%i in ('dir /b /s /a-d system\app\*.apk') do (
    move /y "%%i" "%DstFolder%"
)
pause
红色部分是.apk的路径,这个随便的。
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

万一1里面有1.apk,2里面也有1.apk,都移动到app0里面会发生覆盖的。需要考虑这种情况吗?

TOP

本帖最后由 GNU 于 2017-1-8 20:14 编辑

不考虑同名文件问题的话可以试试这样:
  1. @echo off
  2. for /f "delims=" %%i in ('dir /b /s /a-d "app"') do (
  3.     move /y "%%i" "app0\"
  4. )
复制代码

TOP

回复 3# GNU


    直接用/r 比dir要好用

TOP

回复 4# Nsqs


    据说 for /r 效率高,我这纯属个人习惯。

TOP

回复 2# GNU
谢谢,不会出现这种问题

TOP

回复 3# GNU


    感谢抽时间放代码。谢谢,晚上回去测试下

TOP

回复 3# GNU


    其实那个数字文件夹不是数字,我只是打个比方,好理解。实际上这些文件夹都是英文名的文件夹,比如文件夹miui里面只有miui.apk文件。

TOP

回复 3# GNU


    代码运行失败,只是闪了一下就没了。文件里面啥都没变化

TOP

回复 5# GNU


    兄台,帮帮忙,那个.apk文件是在app/*/*.apk这种形式。你之前那代码都没出现*.apk的代码呀,提示找不到文件

TOP

回复 10# ttrrf


    不要直接双击test.bat文件。你先打开一个CMD窗口,在CMD窗口里面执行test.bat

TOP

回复 11# GNU


    你代码里面貌似少了一个双引号呀

TOP

回复 12# ttrrf


    已更正。

TOP

回复 13# GNU


    貌似一样的效果呀,仍然是找不到路径

TOP

回复 14# ttrrf


    把你的目录结构和bat所在的位置发出来看看
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表