Windows批处理指南

Windows 批处理脚本指南: 解析输入

2019-06-12  本文已影响0人  ettingshausen

健壮的输入解析,是一个好的脚本和普通脚本的区分标准。本文将介绍一些相关技巧。

最简单的方式读取命令行参数


到目前为止,解析命令行参数最简单的方法是按序号位置读取所需参数。

在这个示例中,先拿到到第一个参数,作为传递的文件的完整路径。如果文件不存在则输出一个错误信息到标准错误输出,最后退出脚本:

SET filepath=%~f1

IF NOT EXIST "%filepath%" (
    ECHO %~n0: file not found - %filepath% >&2
    EXIT /B 1
)

可选参数


给参数设置默认值

SET filepath=%dp0\default.txt

:: the first parameter is an optional filepath
IF EXIST "%~f1" SET filepath=%~f1

读取用户输入


@ECHO OFF
:confirm
SET /P confirm="Continue [y/n]>"
ECHO %confirm% | FINDSTR /I "y" > NUL && GOTO confirm

使用SET /P 读取用户输入,然后使用|(管道操作符)将用户输入定向到 FINDSTR/I表示忽略大小写。如果输入的是Y或者y,程序重复运行。

上一篇下一篇

猜你喜欢

热点阅读