【问题标题】:Batch set command returned value to variable批量设置命令返回值到变量
【发布时间】:2015-08-27 13:04:02
【问题描述】:

我正在尝试编写一个简单的批处理脚本来获取文件的大小并将其设置为批处理文件中的局部变量。

我尝试了一些变体,但我不断收到以下错误:

The following usage of the path operator in batch-parameter

替换无效:%~zI

对于有效格式,请输入 CALL /?或 FOR /?

这是我的代码:

@ECHO OFF
SETLOCAL ENABLEEXTENSIONS
SET me=%~n0
SET parent=%~dp0

SET var = 
FOR %I in (C:\listener.log) DO CALL %~zI

提前致谢。

【问题讨论】:

    标签: batch-file


    【解决方案1】:

    下面是替换它的示例行:

    FOR %%a in ("C:\listener.log") DO set "size=%%~za"
    

    【讨论】:

    • @DavidFaiz 解释它是如何不起作用的。您收到错误消息了吗?
    【解决方案2】:

    最终使用了这个:

    @echo off
    call :getFilesize tnsnames.ora
    echo %fileSize%
    exit /b
    
    :getFilesize
    set filesize=%~z1
    exit /b
    

    【讨论】:

      猜你喜欢
      • 2018-11-18
      • 2013-09-15
      • 2017-04-20
      • 2015-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多