我怎样才能将Findstr输出到IF存在语句中?

时间:2016-01-04 00:44:21

标签: batch-file

我正在尝试使用批处理文件工作来开发游戏,我对这项工作还有点新意。游戏将类似于黑客模拟器(它不是真正的黑客攻击,只是让它看起来像它),但它将是一个多人游戏,其中一个团队是R而另一个团队是B.

在游戏中,用户需要找到混合的用户名和密码并匹配它们以在游戏中攻击用户。例如,如果用户想要破解User1,他/她需要通过所有随机生成的密码文件找到User1的密码。

为了让他们这样做,他们需要知道用户名和密码。我得到的用户名部分,如果用户存在,批处理文件会看到,但现在需要确定密码匹配。这是代码:

:authousrrgy
echo AUTHENTICATION REQUIRED! PLEASE ENTER THE USER'S PASSWORD!
set /p usrpwd=^>
if "%userpwd%"=="%userpwd%" goto authredusr
:authredusr
echo Authenticating, please wait
if exist R\Orig-UserAuth\"%userpwd%" goto checkpwd
if not exist R\Orig-UserAuth\"%userpwd%" goto Authfail1
:Authfail1
echo Authentication Failed. User doesn't exist.
goto gwayred
:checkpwd

在checkpwd上我需要帮助。将存在名为userauth的混合用户名和密码文件夹(其中用户只能使用ls读取文件),并且存在原始用户认证文件夹,其中每个文件的名称将是用户,密码将包含在文件夹。我需要用户在命令行上输入的那个匹配原始userauth中提供的那个。

1 个答案:

答案 0 :(得分:0)

for /F "delims=" %%e in ('type ip.txt ^| findstr Server:') do set storevariable=%%e

将ip.txt替换为实际文件名,将Server替换为findstr变量,输出将存储在变量名storevariable中。

echo %storevariable% will show the output value.