【问题标题】:Move file from between subfolders under folder level在文件夹级别下的子文件夹之间移动文件
【发布时间】:2014-10-12 08:13:22
【问题描述】:

我有大约 200 个文件夹映射到一个驱动器,我们称之为 D:。 D 上的 200 个文件夹中:他们有四个主要文件夹,其中两个是当前文件夹和过期文件夹。我的问题是,有没有一种方法可以编写脚本来遍历 200 个文件夹,并将一个文档从当前文件夹复制到该级别的过期文件夹。完成此步骤后,我想重命名当前文件夹中的文档以删除日期(11 个字符)。

例如

Copy D:\Client\Current\Current Quote 09 30 2014.docx --> D:\Client\Expired\Current Quote 09 30 2014.docx
Rename D:\Client\Current\Current Quote 09 30 2014.docx --> D:\Client\Current\Current Quote.docx

提前感谢您的建议,

约旦

【问题讨论】:

  • 所以你有D:\Client1\..., ..., D:\client200\...?
  • 斯蒂芬说得对。感谢您的澄清。

标签: batch-file batch-processing batch-rename


【解决方案1】:

不确定这是否会涵盖它,但它至少应该让您朝着正确的方向前进。有点不清楚您是否需要处理多个文件,或者只有一个日期可能不同。

@echo off
setlocal ENABLEDELAYEDEXPANSION
for /d %%a in (*) do (
    pushd %%a\current
    for %%f in (filename*) do (
        copy "%%f" ..\expired
        set fn=%%~nf
        set fn=!fn:~0,-11!
        ren "%%f" "!fn!%%xf"
    )
    popd
)

【讨论】:

  • 谢谢斯科特。当前汇率通常只有一种,但有时也有两种(用户错误,或者新汇率尚未生效时已创建)。
猜你喜欢
  • 2012-05-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-02
  • 1970-01-01
  • 1970-01-01
  • 2021-08-02
相关资源
最近更新 更多