吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 218|回复: 10
收起左侧

[经验求助] 如何克隆某个文件夹全部结构及空文件

[复制链接]
老师 发表于 2024-3-6 15:36
25吾爱币
本帖最后由 老师 于 2024-3-6 15:38 编辑

如题,如何克隆某个文件夹全部结构及空文件。
需求:克隆某个文件夹里的全部文件结构,以及里面的文件变为空文件。

论坛里能找到的都是克隆某个文件夹里的全部文件结构,但是不能把里面的文件变为空文件输出。
比如:A文件夹里有B.txt、C.rar、d.wps,要把B.txt、C.rar、d.wps里的内容清空,变为空文件(或者新建同名文件也可以)。

最佳答案

查看完整内容

[md]```bash @echo off setlocal :: 设置源路径和目标路径 set "SOURCE_PATH=C:%users\10035\.vscode" set "TARGET_PATH=C:%users\10035\.vscode_bak" :: 检查目标目录是否存在,如果不存在则创建 if not exist "%TARGET_PATH%" mkdir "%TARGET_PATH%" :: 递归处理源路径下的所有目录和文件 call :CopyStructure "%SOURCE_PATH%" "%TARGET_PATH%" goto :eof :CopyStructure pushd "%~1" || exit /b for /f ...

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

RS水果 发表于 2024-3-6 15:36
本帖最后由 RS水果 于 2024-3-6 16:12 编辑
@echo off
setlocal

:: 设置源路径和目标路径
set "SOURCE_PATH=C:\Users\10035\.vscode"
set "TARGET_PATH=C:\Users\10035\.vscode_bak"

:: 检查目标目录是否存在,如果不存在则创建
if not exist "%TARGET_PATH%" mkdir "%TARGET_PATH%"

:: 递归处理源路径下的所有目录和文件
call :CopyStructure "%SOURCE_PATH%" "%TARGET_PATH%"

goto :eof

:CopyStructure
pushd "%~1" || exit /b
for /f "delims=" %%i in ('dir /b /a:d') do (
    :: 创建目标目录
    mkdir "%~2\%%i" 2>nul
    :: 递归调用以处理子目录
    call :CopyStructure "%%i" "%~2\%%i"
)
for /f "delims=" %%i in ('dir /b /a:-d') do (
    :: 在目标目录下创建同名空文件
    copy /y nul "%~2\%%i" 2>nul
)
popd
exit /b

使用上面的代码 在桌面或者你记得住的地方新建文本.txt 复制代码到文本后 另存为 克隆.bat

需要注意的是 在执行前记得修改软件里的 克隆目标路径 和输出路径

代码里以以下路径作为演示:

克隆目标路径 C:\Users\10035\.vscode
输出目标路径 C:\Users\10035\.vscode_bak

修改完路径后 双击这个程序 就可以执行了

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
老师 + 1 + 1 感谢,完美运行!

查看全部评分

z906z5374 发表于 2024-3-6 18:07
不是直接cmd  xcopy /e就行吗? 用法和copy一样

---------------------------------------------------------------
Microsoft Windows [版本 10.0.22631.3007]
(c) Microsoft Corporation。保留所有权利。

C:\Users\Administrator>xcopy /?
复制文件和目录树。

XCOPY 源 [目标] [/A | /M] [/D[:d ate]] [/P] [/S [/E]] [/V] [/W]
                           [/C][/I][/Q][/F][/L][/G][/H][/R][/T][/U]
                           [/K][/N][/O][/X][/Y][/-Y][/Z][/B][/J]
                           [/排除:file1[+file2][+file3]...][/压缩]

源 指定要复制的文件。
  目标 指定新文件的位置和/或名称。
  /A 仅复制具有存档属性集的文件,
               不更改属性。
  /M 仅复制具有存档属性集的文件,
               关闭存档属性。
  /D:m-d-y 复制在指定日期或之后更改的文件。
               如果未给定日期,则仅复制那些
               源时间比目标时间新的文件。
  /排除:file1[+file2][+file3]...
               指定包含字符串的文件列表。 每个字符串
               应位于文件的单独行中。 当任意
               字符串与要复制的文件的绝对路径的任意部分
               匹配时,将从复制中排除该文件。 例
               如,指定 \obj\ 或 .obj 等字符串将排除
               目录 obj 下的所有文件或所有具有
               .obj 扩展名的文件。
  /P 创建每个目标文件之前会提示你。
  /S 复制除空目录和空子目录之外的目录和子目录。
  /E 复制目录和子目录,包括空目录和空子目录。
....
---------------------------------------------------------------
z906z5374 发表于 2024-3-6 18:09
z906z5374 发表于 2024-3-6 18:07
不是直接cmd  xcopy /e就行吗? 用法和copy一样

----------------------------------------------------- ...

看错需求了,无视我的回复
cmbrun 发表于 2024-3-6 19:13
我的思路是
dir  /s  获取目录及子目录文件名

然后
md 目录
> 文件名

当然脚本就不会了,等高手出马
 楼主| 老师 发表于 2024-3-7 10:17
RS水果 发表于 2024-3-6 15:36
[md]```bash
@echo off
setlocal

刚刚发现一个问题,大佬有空的时候麻烦看看:
如果目录中有%号,则本身可以被创建,但子目录和其下的文件不能被创建。
比如:
有个目录为 "F:\Sour\空气湿度80%到90% 收拾房间"
里面有空格,也有%号。执行批处理后,这个目录可以被创建,但打开为空(其下的子目录和所有文件没有被创建)

谢谢!

点评

我尝试了多种办法, 但是对于文件名含%的这种情况无法修复, 如果要解决这个问题, 建议重新开贴 找大佬解决  详情 回复 发表于 2024-3-7 13:01
RS水果 发表于 2024-3-7 13:01
老师 发表于 2024-3-7 10:17
刚刚发现一个问题,大佬有空的时候麻烦看看:
如果目录中有%号,则本身可以被创建,但子目录和其下的文 ...

我尝试了多种办法, 但是对于文件名含%的这种情况无法修复, 如果要解决这个问题, 建议重新开贴 找大佬解决
 楼主| 老师 发表于 2024-3-7 13:04
RS水果 发表于 2024-3-7 13:01
我尝试了多种办法, 但是对于文件名含%的这种情况无法修复, 如果要解决这个问题, 建议重新开贴 找大佬解决

好的,谢谢,我在这里翻到了一些思路,但是不太看得懂。
https://blog.csdn.net/wltsysterm/article/details/123016317
 楼主| 老师 发表于 2024-3-7 13:05
RS水果 发表于 2024-3-7 13:01
我尝试了多种办法, 但是对于文件名含%的这种情况无法修复, 如果要解决这个问题, 建议重新开贴 找大佬解决

好的,谢谢,我再开贴试试,感谢!

点评

你可以提高cb悬赏金额 要求程序带GUI界面 方便修改路径 支持鼠标拖入显示路径 能用易语言开发最好 这样的要求 易语言的好处是开发快 1小时内就能开发完毕 而且不需要额外的编程环境 其他语言开发 你运行  详情 回复 发表于 2024-3-7 13:11
RS水果 发表于 2024-3-7 13:11
老师 发表于 2024-3-7 13:05
好的,谢谢,我再开贴试试,感谢!

你可以提高cb悬赏金额 要求程序带GUI界面 方便修改路径 支持鼠标拖入显示路径  能用易语言开发最好

这样的要求

易语言的好处是开发快 1小时内就能开发完毕 而且不需要额外的编程环境

其他语言开发 你运行的话 可能要下载语言支持环境 比如node python golang java等等 会比较麻烦
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-5-21 22:57

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表