批处理之家's Archiver

allen3371 发表于 2020-2-27 14:56

请问,为何我的forfile里,使用set命令就是出错呢?

forfiles /M %mask%  /D -1  /c "cmd /c set k=@fdate echo k "

我想把k赋值为文件的日期,然后输出k

但是总是echo 0  
请问为何啊?

马帅123 发表于 2020-2-28 08:13

您的/m参数我不知道您设为什么了,首先echo k这个K应该要加%号吧。如果还是不行的话提供一种思路,可以把执行的结果>到文件里,然后再读取。
forfiles这个命令我没怎么用过,如果我说的不对,请无视。

went 发表于 2020-2-29 11:59

开了延迟[code]@echo off
setlocal enabledelayedexpansion
forfiles /M %mask%  /D -1  /c "cmd /E:ON /V:ON /C set k=@fdate & echo ^!k^!"
pause[/code]没开延迟[code]@echo off
forfiles /M %mask%  /D -1  /c "cmd /E:ON /V:ON /C set k=@fdate & echo !k!"
pause[/code]

zaqmlp 发表于 2020-2-29 14:42

为什么不直接echo;@fdate

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.