Determining if batch script has been started/executed from the command line (cmd) -or- To pause or not to pause?

后端 未结 9 1988
眼角桃花
眼角桃花 2021-02-01 17:34

I like to have a typical \"usage:\" line in my cmd.exe scripts — if a parameter is missing, user is given simple reminder of how the script is to be used.

9条回答
  •  隐瞒了意图╮
    2021-02-01 17:59

    for internal command

    setlocal EnableDelayedExpansion
    set "cmddiff=!cmdcmdline:~0,1!" & if !cmddiff! neq ^" ( pause >nul )
    endlocal
    

    or

    setlocal EnableDelayedExpansion
    set "cmddiff=!cmdcmdline:~28,1!" & if !cmddiff! neq ^" ( pause >nul )
    endlocal
    

    You can compare the different thing, but this is only worked within EnableDelayedExpansion. and I don't think that this will be always worked, cause windows version, etc...

提交回复
热议问题