当 findstr 使用 `Set /p _var=/irc:` 时,冒号的处理方式与我输入 `findstr /irc:` 时不同。提供的示例

当 findstr 使用 `Set /p _var=/irc:` 时,冒号的处理方式与我输入 `findstr /irc:` 时不同。提供的示例

我已经搜索过未记录的“findstr”线程SS64 findstr-escapesSS64,转义字符如何以以下方式包含冒号;两者都没有运气。

批处理片段示例:

@echo off
Setlocal EnableDelayedExpansion

REM 我希望 !/ipc! 内的冒号,这样用户就不需要记住并输入它,以遵守findstr /irc:

set ipc=/irc:set "ipc=/irc:"当使用以下内容时,也没有帮助。下面,set /p ipc1=将有一个由用户输入的 RegEx:," 7_20"不起作用。当我@echo !ipc!,值正确显示,但不会被处理,也不会找到 --> 23_Channel 7_20240302133900。

目前我不得不使用set ipc=/irc强制用户输入的:" 7_20"位置参数for /D %%i in是 ?yyymmdd

设置/p ipc1=IPC?
设置/p ipc2=IPC?

对于/D %%i 在(%1 %2 %3 %4 %5 %6 %7 %8 %9)中执行(

对于/f“delims =”%% A在('dir/b%%i^| findstr!ipc!!ipc1!!ipc2!2^> nul')中执行(

复制 /y "%%i%%A" _copies @echo "%%i%%A"
设置 fn=%%A
设置 sdir=%%i


@comp 非常感谢你让我走到这一步。我希望得到的反馈是一份文档,解释如何使用和/或包含上面演示的冒号set /p,以便findstr正确理解它。

尊敬

相关内容