zoukankan      html  css  js  c++  java
  • Batch

    总结

    %%a refers to the name of the variable your for loop will write to.

    Quoted from for /?:

    FOR %variable IN (set) DO command [command-parameters]
    
      %variable  Specifies a single letter replaceable parameter.
      (set)      Specifies a set of one or more files.  Wildcards may be used.
      command    Specifies the command to carry out for each file.
      command-parameters
                 Specifies parameters or switches for the specified command.
    
    To use the FOR command in a batch program, specify %%variable instead
    of %variable.  Variable names are case sensitive, so %i is different
    from %I.
    

      

    Example 中文 1:

    for /f "tokens=1,2,3 delims=- " %%a in ('date /t') do (
         echo %%a
         echo %%b
         echo %%c
         )
    对 date /t 的输出结果,每行取1、2、3列
    第一列对应指定的 %%a ,后面的 %%b 和 %%c 是派生出来的,对应其它列
    分隔符指定为 - 和"空格",注意 delims=- 后面有个"空格"
    其中 tokens=1,2,3 若用 tokens=1-3 替换,效果是一样的
    

      

    Example 中文 2:

    for /f "tokens=2* delims=- " %%a in ('date /t') do echo %%b
    取第2列给 %%a ,其后的列都给 %%b
    

      

    Example 1:

    for /f "tokens=1,* eol=: delims==" %%A in (%appdata%gamelauncheroptions.txt) do (
      if "%%A"=="menu" set usemenu=%%B
    )
    

      

    Above snippet would now read the file line by line and for each line would discard everything after a colon (the eol=: option), use the equals sign as a token delimiter and capture two tokens: The part before the first = and everything after it.

    The tokens are named starting with %%A so the second one is implicitly(含蓄的) %%B (again, this is explained in help for). Now, for each line we examine the first token and look whether it's menu and if so, assign its value to the usemenu variable. 

    Example 2:

    for %%a in (A B C D E) do Echo %%a
    

    Produces

    A
    B
    C
    D
    E
    

    Example 3:

    for %%a in (A B C) do (for %%b in (1 2 3) do Echo %%a:%%b)
    

    Produces

    A:1
    A:2
    A:3
    B:1
    B:2
    B:3
    C:1
    C:2
    C:3
  • 相关阅读:
    k8s 使用 Init Container 确保依赖的服务已经启动
    asp.net core 从 3.0 到 3.1
    Github原生CI/CD,初尝Github Actions
    [nginx]编译安装及安全优化
    [nginx]盗链和防盗链场景模拟实现
    [nginx]location语法
    [nginx]站点目录及文件访问控制
    [svc]nginx限制客户端上传附件的大小
    [sql]mysql指引(整理中...)-对db的分类
    [sql]mysql参数(配置)手册
  • 原文地址:https://www.cnblogs.com/frankcui/p/11630269.html
Copyright © 2011-2022 走看看