【问题标题】:Difference between %~1 and %1 in batch?批处理中 %~1 和 %1 之间的区别?
【发布时间】:2018-05-05 16:27:46
【问题描述】:

在批处理中,我有时会看到%~1 用于开关,还有%1。有什么不同?它们似乎都对我有用。

例子:

if "%~1"=="" echo No variable specified.

if "%1"=="" echo No variable specified.

似乎可以互换。

【问题讨论】:

    标签: batch-file variables


    【解决方案1】:

    解释在For /?call /?扩展 %1 删除任何周围的引号 (")

        %~1         - expands %1 removing any surrounding quotes (")
        %~f1        - expands %1 to a fully qualified path name
        %~d1        - expands %1 to a drive letter only
        %~p1        - expands %1 to a path only
        %~n1        - expands %1 to a file name only
        %~x1        - expands %1 to a file extension only
        %~s1        - expanded path contains short names only
        %~a1        - expands %1 to file attributes
        %~t1        - expands %1 to date/time of file
        %~z1        - expands %1 to size of file
        %~$PATH:1   - searches the directories listed in the PATH
                       environment variable and expands %1 to the fully
                       qualified name of the first one found.  If the
                       environment variable name is not defined or the
                       file is not found by the search, then this
                       modifier expands to the empty string
    

    你可能会觉得这个链接很有趣Command to run a .bat file

    【讨论】:

    • 谢谢!非常感谢。
    猜你喜欢
    • 2022-10-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-01
    • 2018-10-17
    • 1970-01-01
    • 2022-05-04
    • 2019-04-27
    • 1970-01-01
    相关资源
    最近更新 更多