命令提示输入用户名和密码

时间:2013-03-08 05:29:13

标签: command-line batch-file syntax-error command-prompt

我试过这个,但它一直都会返回错误the syntax of the command is incorrect。这是我试过的代码:

@echo off
echo Enter Username and Password to view files

set /p user=Enter UserId:
set /p pass=Enter Password:

if /i %user%==admin (if /i %pass%==*my password was here*)

(goto admin1)

:admin1
..etc..

2 个答案:

答案 0 :(得分:1)

您的代码的问题在于您使用括号。这是相同代码的重新完成版本。

@echo off
echo Enter Username and Password to view files

set /p user=Enter UserID: 
set /p pass=Enter Password: 

if /i %user%==admin (
    if /i %pass%==password goto admin1
)

:admin1
::More here...

此外,这个代码有一个问题(如果有效的话,还有你的代码)。无论您输入什么用户或密码,都会转到:admin1。这是因为批处理文件从上到下读取,因此它会跳过if块中的代码并转到:admin1块。

您可以通过将代码置于将重定向用户的代码之间来解决此问题。

此外,我建议您查看formatting help以正确格式化您的问题(将代码放入代码块,链接等)。

答案 1 :(得分:0)

您的括号已关闭。

@echo off
echo Enter Username and Password to view files

set /p user=Enter UserId:
set /p pass=Enter Password:

if /i "%user%"=="admin" (if /i "%pass%"=="password" goto admin1)

goto skip

:admin1
echo Done
goto END

:skip

:END