• cmd批处理参数


    可以在批处理文件内的任何地方使用批处理参数,以提取有关环境设置的信息。

    Cmd.exe 提供批处理参数扩展变量(%0 %9)。当在批处理文件中使用批处理参数时,%0 将由批处理文件名替换,而 %1 %9 将由在命令行键入的相应参数替换。要访问超出 %9 的参数,必须使用 shift 命令。有关 shift 命令的详细信息,请参阅 Shift%* 批处理参数是传递到批处理文件中的所有参数(不包括 %0)的通配符引用。

    例如,要将 Folder1 中的内容复制到 Folder2,其中 %1 %2 将分别由值 Folder1 Folder2 替换,请在批处理文件 Mybatch.bat 中键入如下内容:

    xcopy %1\*.* %2

    要运行该文件,请键入:

    mybatch.bat C:\folder1 D:\folder2

    这与在批处理文件中键入如下内容是等效的:

    xcopy C:\folder1 \*.* D:\folder2

    也可以在批处理参数中使用编辑符。编辑符使用当前的驱动器和目录信息将批处理参数作为部分或完整的文件或目录名进行扩展。要使用编辑符,请键入百分号 (%) 字符,后面是波形符号 (~) 字符,然后键入合适的编辑符(即 %~modifier)。

    下表列出了可在扩展中使用的编辑符。

    编辑符

    描述

    %~1

    扩展 %1 并删除任何外围引号 ("")

    %~f1

    %1 扩展到完全合格的路径名。

    %~d1

    %1 扩展到驱动器盘符。

    %~p1

    %1 扩展到路径。

    %~n1

    %1 扩展到文件名。

    %~x1

    %1 扩展到文件扩展名。

    %~s1

    扩展的路径仅包含短名称。

    %~a1

    %1 扩展到文件属性。

    %~t1

    %1 扩展到文件日期/时间。

    %~z1

    %1 扩展到文件大小。

    %~$PATH:1

    搜索 PATH 环境变量中列出的目录,并将 %1 扩展到第一个找到的目录的完全合格名称。如果没有定义环境变量名称,或没有找到文件,则此编辑符扩展成空字符串。

    下表列出了可用于获取复合结果的编辑符和限定符的可能组合情况:

    编辑符

    描述

    %~dp1

    %1 扩展到驱动器盘符和路径。

    %~nx1

    %1 扩展到文件名和扩展名。

    %~dp$PATH:1

    PATH 环境变量列出的目录中搜索 %1,并扩展到第一个找到的目录的驱动器盘符和路径。

    %~ftza1

    %1 扩展到类似 dir 的输出行。

    注意

    • 在上面的例子中,可以使用其他批处理参数值替换 %1 PATH

    %* 编辑符是唯一可代表在批处理文件中传递的所有参数的编辑符。不能将该编辑符与 %~ 编辑符组合使用。%~ 语法必须通过有效的参数值来终止。

    不能以与使用环境变量相同的方式使用批处理参数。不能搜索和替换值,或检查子字符串。然而,可以将参数分配给环境变量,然后对该环境变量进行操作。

     

  • 相关阅读:
    学习笔记008之Task
    问题: ActivityManager: Warning: Activity not started, its current task has been brought to the front
    问题; No label views point to this text field with an android:labelFor="@+id/@+id/editTextNumber1" attribute
    学习笔记001之[Android开发视频教学].01_06_Android当中的常见控件
    学习笔记002之学习资料
    学习笔记001之环境配置
    设计模式之代理模式
    C# Enum转换
    Json数据序列化对象,及对象序列化为Json格式
    groupby以后取每组前n行
  • 原文地址:https://www.cnblogs.com/ahuo/p/1025886.html
Copyright © 2020-2023  润新知