For循环在批处理文件中无法正常工作

我正在尝试使用此批处理文件获取当前的操作系统。是:

@echo off
for /f "skip=1 tokens=1* delims= " %%a in ('wmic path win32_operatingsystem get caption') do set _os=%%a %%b %%c %%d
echo You are running %_os%.
goto :eof

我的操作系统是Windows 7,因此我希望它会返回:

You are running microsoft Windows 7 Ultimate.

但是它返回您正在运行%c%d。

Why I am getting this result?

zhiyliu8 回答:For循环在批处理文件中无法正常工作

有几种方法,一种是Mofi在上面的评论中发布的,已经演示了使用/value的主要更改。您还可以将标题本身用作具有其值的变量名称:

@echo off
for /f "delims=" %%a in ('wmic path win32_operatingsystem get caption /value') do set %%a>nul 2>&1
echo %caption%
本文链接:https://www.f2er.com/3115786.html

大家都在问