批处理文件获取命令的输出存储在变量中

2023-12-20

我正在尝试将此 WMIC 输出存储到变量中。当我回显 VAL 时,我什么也没得到! 我想要实现的只是获取文件的最后修改日期。这个 WMIC 命令的问题是它返回一个长数字的日期,我想操纵该输出

这是我遇到此问题的脚本部分

:: these lines are at the top of the script

SETLOCAL ENABLEEXTENSIONS
SETLOCAL ENABLEDELAYEDEXPANSION

...
...
...
...

:: a function:

set COMM="WMIC DataFile WHERE Name='C:\\Program Files (x86)\\folder\\folder\\folder\\container.npp' Get InstallDate"

set VAL=1

for /f "skip=1" %%A in ('%COMM%') do (set VAL=%%A)
echo %VAL%

@echo off
    setlocal enableextensions disabledelayedexpansion

    set "file=c:\\Program Files (x86)\\Internet Explorer\\iexplore.exe"
    for /f %%a in (
        'wmic DataFile where "Name='%file%'" get InstallDate ^| find "+" '
    ) do set "val=%%a"

    echo [%val%]

所有问题都是字符串的正确引用。为了wmic包含文件名的字符串需要用单引号括起来并且没有问题for the where条件用双引号括起来。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

批处理文件获取命令的输出存储在变量中 的相关文章

随机推荐