问题标签 [forfiles]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
557 浏览

batch-file - 有没有办法对 forfiles 执行否定搜索掩码?

我知道如何在 forfiles 命令中使用搜索掩码来定位特定扩展名的文件,但我正在处理一个我想避免特定扩展名并捕获其他所有内容的情况。

有没有一种简单的方法可以使用 forfiles 命令实现这一点,还是我需要编写一个自定义的 for 循环来处理这个过程?我不想运行像下面这样的命令,这会迫使我事先定义我的搜索掩码。

我的用例是基于单个扩展名递归地从目录中删除所有未加密的文件。这将是我的负值。

0 投票
2 回答
84 浏览

batch-file - forfiles 修改的文件,不包括新创建的文件

我正在尝试编写代码,使我能够识别文件夹中自本月初以来已修改但不是新创建的文件(表示修订更改)。输出更改文件的数量比修改文件的名称更重要,但两者都可以。

我曾尝试使用 forfiles 来实现这一点,但如果不列出新创建的文件,我无法弄清楚如何做到这一点。

我认为也许搜索在月初之前创建但在上个月内修改的文件可能是答案,但我不确定如何做到这一点。到目前为止,我的代码仍然显示新创建的文件。

0 投票
1 回答
219 浏览

batch-file - 从批处理文件调用 MSXSL

我想创建一个循环遍历包含 xml 文件的文件夹的批处理文件,然后调用 msxsl 来修改它们,并在修改 xml 文件后,复制到具有原始文件名的另一个文件夹。

我试过这个:

但这给了我这个错误:

这是因为输出文件名周围有双引号。我该如何解决这个问题?

0 投票
0 回答
337 浏览

windows - Forfiles 命令 Windows cmd - 文件名中包含 2 个或更多字符串片段的 forfiles 执行某些操作

我正在尝试回显以多个字符串片段命名的文件列表。我有一个包含子文件夹的文件夹,其中包含名为的 PDF:

一个关键点是我不能确定文件名代码的顺序总是相同的。例如,可能有一些文件名为:

对于上下文或如果有人关心,这些名称包含乡镇 ( EDW)、地段 ( L1_) 和特许权 ( C3_) 代码,并且文件是土地调查。

我想创建一个批处理文件以递归方式列出文件名中同时包含字符串的文件L1_C3_因为L1_我已经成功使用了以下内容:

但是,我被困在如何缩小该列表以仅包含L1_文件名中也有的C3_文件。有人有想法么?在我让这段代码工作之后,我的最终目标是将这些过滤的文件复制到指定的文件夹中。我现在只是在玩代码来创建自定义解决方案。

0 投票
0 回答
182 浏览

windows - 使用 FORFILES 指定输出目录

我有一个包含三个子目录的父目录。两个子目录有要处理的文件。第三个目录是“框架”。

使用 FFMPEG,我想从两个子目录中的每个 .mp4 文件中提取一个帧,并将它们存储在目录“images”中(在对等文件夹“images”中)

上面的命令会引发错误。如果我删除“frames\”,代码可以工作,但图像存储在与 .mp4 相同的子文件夹中

0 投票
0 回答
31 浏览

windows - forfiles 批处理命令在为 /d 参数实施时无法识别 + 符号

forfiles 无法识别 /d 参数的 + 号,我不明白为什么,请帮忙?

这是我的命令,我附上了一个屏幕截图,显示了正在运行命令的文件夹中的文件,我试图让它工作的多种方式,我正在展示它是如何工作的 - 标志没问题。

forfiles /p E:\Test /m *.* /d +7 /c "cmd /c echo @file"

目标:我试图利用 forfiles 仅识别过去 7 天的文件,然后我想对找到的文件运行 7zip。我只需要 forfiles 就可以了!

错误:未找到具有指定搜索条件的文件。

0 投票
2 回答
337 浏览

batch-file - 如果文件早于 X 天 -> 运行命令 - CMD

我正在为在各种 Windows Server 版本上运行的 DriveSnapshot 编写脚本。如果文件夹中有超过 6 天的文件,我想运行特定的批处理文件(完整备份)。如果没有此类文件 -> 运行差异备份。

我试过:

但似乎你不能只在ForFiles.

似乎该变量永远不会被赋予正确的值。

Microsoft Docs 页面ForFiles内容如下:

对每个文件运行指定的命令。命令字符串应该用引号引起来。*

我知道我的命令set var=1适用于它找到的每个文件,但应该仍然有效,对吧?

如果有更好的方法来解决这个问题,请赐教...

0 投票
0 回答
48 浏览

forfiles - forfiles 命令,未知含义

有人可以在下面解释一下-p, -s,-m/D/C含义吗?

0 投票
0 回答
18 浏览

python - 用于清空项目树中特定子文件夹的脚本

我们有一个包含大约 3000 个项目文件夹的网络共享。命名约定如下:

2018 年创建的
项目:2018xxx 2019 年创建的项目:2019xxx

所有这些项目文件夹都有相同的子文件夹集,例如:

01 文件夹 1
02 文件夹 2
03 文件夹 3
04 临时

我要创建的是一个预定脚本(或其他任何内容),用于删除从 2020xxx 开始的每个项目文件夹中 04 临时文件夹中所有超过7文件

最好的方法是什么?

此致。

0 投票
1 回答
64 浏览

batch-file - 仅移动第一个文件

如果文件夹中包含超过 100 个文件,我正在尝试构建一个移动第一个文件(按名称排序)的脚本。

我只能到这里,但它移动了所有文件。

有人能帮助我吗?