我正在编写一个将在目录上运行的批处理脚本。我希望能够添加一个标志(例如 -r 或/r 或类似的东西),使脚本运行文件夹树而不是单个目录。是否可以使用批处理添加标志选项?
谢谢
最佳答案
当然有可能。命令行参数作为 %1、%2 等传递到您的批处理文件中。(%0 是批处理文件的名称。)
IF "%1"=="/r" ECHO You passed the /r flag.
使用
SHIFT
删除第一个参数并将所有其他参数一个一个移动。如果你想允许/r 出现在命令行中的任何地方,你可以使用它来变得更漂亮。例如::processargs
SET ARG=%1
IF DEFINED ARG (
IF "%ARG%"=="/r" ECHO You passed the /r flag.
SHIFT
GOTO processargs
)
或使用
%*
(扩展到整个参数列表)在 FOR
中像这样循环:FOR %%A IN (%*) DO (
IF "%%A"=="/r" ECHO You passed the /r flag.
)
关于batch-file - 向批处理脚本添加标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15143259/