【问题标题】:Findstr, how to read part of string/lineFindstr,如何读取部分字符串/行
【发布时间】:2012-12-04 14:38:38
【问题描述】:

我有一个包含名称和扩展名列表的文件,格式如下:

JoeBloggs=102

约翰史密斯=109

我想要做的是使用 findstr 但读取等号后面的数字。所以我使用以下命令:

@echo off
for /F "delims=" %%a in ('findstr /p %username% extensions.txt') do set ext=%%a

如果用户以 JoeBloggs 身份登录,它将捕获JoeBloggs=102,我希望它只捕获102。所以基本上只有等号后面的数字。

【问题讨论】:

    标签: variables batch-file cmd output findstr


    【解决方案1】:
    @echo off
    for /f "tokens=1,2 delims==" %%a in (names.txt) do (
    if "%%a"=="%username%" set ext=%%b
    )
    echo %ext%
    pause >nul
    

    这将读取文本文件的每一行并在遇到= 符号时将其拆分。

    我已指定使用标记 1 和 2,1 在拆分之前,2 在拆分之后,因此我们可以比较第一个,如果是您想要的,请使用第二个。

    【讨论】:

    • 稍微解释一下就完美了:-)
    • 谢谢jeb,我现在加一个:)
    猜你喜欢
    • 2015-03-05
    • 1970-01-01
    • 2022-01-24
    • 1970-01-01
    • 1970-01-01
    • 2022-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多