我有下面的命令来计算遵循该模式的所有目录20??????:
'dir /b "20??????" | find /c "2"'
Run Code Online (Sandbox Code Playgroud)
例如,如果我有以下目录,该命令将返回6:
20090901
20090902
20090903
20090904
20090905
20090906
Run Code Online (Sandbox Code Playgroud)
如何在变量中存储此命令的结果(前面提到的示例中的6)?
Dav*_*ski 45
set cmd="dir /b "20??????" | find /c "2" "
FOR /F "tokens=*" %%i IN (' %cmd% ') DO SET X=%%i
Run Code Online (Sandbox Code Playgroud)
(dir /b "20??????" | find /c "2")>>x.txt
set /p variable=<x.txt
Run Code Online (Sandbox Code Playgroud)
就这样.
当然,如果您不想要该文件,请在以后执行此操作:
del x.txt
Run Code Online (Sandbox Code Playgroud)
编辑 - 如何使文件名唯一:
@Mai:使用它来创建一个uniqe文件名:
set timestamp=%date:.=%%time::=%
set timestamp=%timestamp:,=%
set timestamp=%timestamp:/=%
set timestamp=%timestamp:-=%
set filename=file%timestamp%.tmp
Run Code Online (Sandbox Code Playgroud)
如果系统区域性的日期格式中包含其他字符,请添加更多替换项