【问题标题】:How do I store output in a variable from Windows "where" command, in a batch file?如何在批处理文件中将输出存储在 Windows“where”命令的变量中?
【发布时间】:2016-04-28 23:28:00
【问题描述】:

我正在使用 Windows 批处理文件中的“where”命令来查找脚本的 java 安装位置

通常从命令行,

C:\Users\user>where java
C:\ProgramData\Oracle\Java\javapath\java.exe

现在我需要能够在变量中获取“where”的输出路径,以便以后在我的批处理文件中使用,我该怎么做?

我试过类似的,

@echo off
cls
set var=1
setlocal enableextensions
for /F "tokens=* USEBACKQ" %%F in ('where java') do (
    set var=%%F
)
echo %var%
endlocal
pause

但它不起作用。

【问题讨论】:

  • 这种情况下需要去掉 usebackq 选项,或者用反引号代替单引号。

标签: windows variables batch-file command-line path


【解决方案1】:

你可以试试这样的:

for /f "delims=" %%F in ('where java') do set var=%%F 
ECHO %var%

对我来说,这个输出:

C:\Program Files\Java\jdk1.7.0_45\bin\java.exe

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-09-11
    • 1970-01-01
    • 1970-01-01
    • 2011-09-15
    • 1970-01-01
    相关资源
    最近更新 更多