gpt4 book ai didi

windows - 复制最新/最新文件夹窗口的内容

转载 作者:可可西里 更新时间:2023-11-01 13:52:26 25 4
gpt4 key购买 nike

我有一些东西可以在每晚创建一个包含文件的新文件夹。有谁知道如何创建一个脚本来将最新/最新文件夹的内容复制到网络共享并覆盖网络共享中的任何文件和文件夹?挠我的头有一段时间了。

提前致谢。

最佳答案

这样的事情可能会达到你的目的:

SET "src_root=D:\root\for\source\directories"
SET "tgt_path=\\NETWORK\SHARE\target\path"

DIR "%src_root%" /B /AD /O-D /TC > "%TEMP%\dirlist.tmp"
< "%TEMP%\dirlist.tmp" SET /P last_dir=

FOR /D %%I IN ("%tgt_path%\*") DO RD "%%I" /S /Q
DEL "%tgt_path%\*" /Q

XCOPY "%src_root%\%last_dir%\*" "%tgt_path%" /S /E

src_root 变量应该包含创建日常文件夹的文件夹路径,而 tgt_path 是要复制的最新文件夹内容的目标路径。

DIR 命令设置为按以下方式返回根文件夹的内容:

  • 输出中没有额外信息,只有名称 (/B);

  • 没有文件,只有文件夹 ( /AD );

  • 按文件夹日期 (/O…) 的降序 (…-…) 对输出进行排序 (…D);

  • 日期是文件夹的创建日期 (/TC)。

输出被重定向到一个临时文件,然后将其第一行读入一个变量(SET /P 命令)。这条信息连同根路径和目标路径最终首先用于删除文件,然后用于复制文件。

删除分两步完成:首先是文件夹(RD 循环中的 FOR /D 命令),然后是文件 (DEL)。我想在这一点上指出,此脚本不会假定您在任何阶段进行干预,我知道这是您的意图。因此,它不需要确认删除目标路径中的文件和文件夹,因此,当您运行脚本时,旧内容将被静默删除(这是 /Q 的效果与 RDDEL 一起使用的开关。

复制是通过 XCOPY 完成的,因为它允许我们保留源文件夹的结构(/S 开关),包括空子目录 (/E),如果有的话。

您可以通过在命令提示符下使用 /? 开关调用其中任何命令来获取有关此处提到的每个命令的更多信息。

关于windows - 复制最新/最新文件夹窗口的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8780753/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com