有人可以解释这些批处理命令的作用吗?
for /f "tokens=2*" %%A in ('REG QUERY "HKCU\Environment" /v timestamp ^|FIND "timestamp"') DO set timer=%%B
答案 0 :(得分:7)
"tokens=2*"
部分将获取它传递的文本并将其拆分为“标记”(默认情况下,以空格分隔的单词)。然后它将从第二个开始接受所有单词,然后将它们依次传递给名称以%%A
开头的变量; %%A
将获得第2个字,%%B
将获得其余部分(如果您愿意,可以使用“*”字样)。有关详细信息,请参阅here。
REG QUERY ... /v
部分在注册表中查找值。由于this page有大量有关如何使用它的信息,因此我不会详细介绍。
FIND
命令只是在REQ QUERY
部分的输出中搜索文本字符串,使用管道将REQ QUERY
的输出重定向到FIND
的输入。有关管道的详细信息,请参阅here。
批处理文件中此行的最终结果是在注册表中搜索HKEY_CURRENT_USER\Environment
下的任何时间戳值,并将它们分配给批处理变量timer
。