如何查找和读取文本文件中的行?批量

时间:2013-05-21 23:22:38

标签: batch-file find

我需要在文本文件中读取一些内容,如下所示:


尼古拉斯密码1

Micheal password2

myname password3


我希望批处理文件检测变量%fname%(Nicholas)是否存在。 之后,我需要它来查明%pword%(password1)是否在%fname%

之后

1 个答案:

答案 0 :(得分:1)

您可以使用for命令,如下所示:

set AUTH_OK=0

for /f "tokens=1-2" %%a in (passwords.txt) do (
    if "%%a"=="%fname%" (
        if "%%b"=="%pword%" (
            set AUTH_OK=1
        )
    )
)

if %AUTH_OK%==1 (
    echo Access granted.
) else (
    echo Access denied.
)

假设您在批处理文件中执行此操作。如果从命令行执行此操作,则必须在这些循环变量上使用单个%而不是double(%%)。

我应该提到这是区分大小写的。