windows - 将命令的输出设置为变量

标签 windows batch-file cmd pipe io-redirection

我想将 10 天前修改的文件数量获取到一个变量。 我可以使用

获取文件数量
forfiles /P "D:\files" /S /D -10  | find /c /v ""

但是当我尝试使用 FOR 将其分配给变量时,它给出了错误。 我在FOR中使用的命令是

FOR /F "delims=" %i IN ('forfiles /P "D:\files" /S /D -10  | find /c /v ""') DO set today=%i

当我删除 | 时,它实际上工作得很好。查找/c/v ""

最佳答案

FOR /F "delims=" %i IN ('forfiles /P "D:\files" /S /D -10  ^| find /c /v ""') DO set today=%i

在这种情况下,您需要逃离管道。

关于windows - 将命令的输出设置为变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29824223/

相关文章:

c# - 在执行期间创建 Windows 窗体控件

grails - 从GORM获取对象集

r - 从 R 控制台执行批处理文件 (psexec.exe)

C# 将多个参数传递给 BAT 文件

json - 如何在 Windows 命令行上通过 html-minifier 将选项传递给 UglifyJS?

cmd - 如何 ping IBM WebSphere MQ 队列管理器?

.net - 启动 .NET 控制台应用程序时会发生什么?

windows - cmd 中 For 循环的属性列表

c++ - Visual Studio 构建带有下划线前缀的 OpenSSL 符号

c++ - 我可以在控制台 C++ 应用程序中使用 SetTimer() API 吗?