[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[ 新手练习 3 ] 批处理简易密码登录

要求:首先设定一个密码如:123;
   然后等待输入密码;
   最后判断输入正确与否并显示提示,如密码正确显示:登录成功,错误则显示:密码不对。

目的:掌握 set /p 和 if 用法

评分:答对有分,第一个最高;答错不扣分;复制代码者扣分。

命令不熟悉可参考:
if 命令示例详解
http://bbs.bathome.net/thread-55-1-1.html
set命令入门训练
http://bbs.bathome.net/thread-461-1-1.html
上一题:[ 新手习题 2 ] 字符替换
http://bbs.bathome.net/thread-2462-1-1.html
下一题:[ 新手习题 4 ] 循环十秒倒计时
http://bbs.bathome.net/thread-2494-1-1.html

[ 本帖最后由 wxcute 于 2008-11-17 11:33 编辑 ]
1

评分人数

@echo off
:sc_start
set /p input=请输入密码:
if not "%input%"=="123" (echo 密码输入错误,请重新输入:&goto sc_start) else (echo 密码正确 & goto end)
:end
pause>nul&exit

TOP

@echo off
:sc_start
set /p input=请输入密码:
if not "%input%"=="admin" (echo 密码输入错误,请重新输入&goto :sc_start) else (echo 密码输入正确!)
pause>nul
goto :eof

TOP

@echo off
:sc_start
set /p input=请输入密码:
if "%input%"=="123" (
        echo 密码正确,登录成功!&pause>nul 2>nul&exit
) else (
        echo 密码错误,请重新输入!&goto sc_start
)

TOP

@echo off
set passd=123
:sc_start
set /p input=请输入密码:
if %passd%==%input% (echo 输入正确 &pause>nul&exit) else (echo 密码错误,请重新输入!)
goto :sc_start

TOP

回复 227# LTSC1809


   
一般没区别,goto :eof 一定要加,不知道哪个规范。
bat小白,请多指教!谢谢!

TOP

回复 211# cmd1152 我goto后面的标签名都是不加冒号的,例如goto a,这有影响吗?我只在设定标签的时候使用冒号。

TOP

回复 226# 77七 这个思路不错。不过我有一个疑问,那就是goto :a这一句,我平时都是不写那个冒号的,也就是goto a,这两种有什么区别吗?哪种更规范一些?

TOP

回复 225# LTSC1809

  1. @echo off
  2. :a
  3. set /p a=请输入密码:
  4. if "%a%" neq "123" goto :a
  5. echo 登陆成功
  6. pause
  7. exit
复制代码
bat小白,请多指教!谢谢!

TOP

本帖最后由 LTSC1809 于 2023-5-1 00:40 编辑
  1. @echo off
  2. set /p a=请输入密码:
  3. if %a% equ 123=goto a
  4. echo 密码不对
  5. pause
  6. exit
  7. :a
  8. echo 登陆成功
  9. pause
  10. exit
复制代码
为什么我不用if   else?因为if else我是最近才学会的,以前不知道怎么写否则怎么样,只会写一个条件不会写else,所以当时一直用的这种解决办法,这样运行出来效果也是一样的,我希望给大家展示一下,问一问大家对这种方法有什么看法

TOP

@echo off
set pwd=123
set /p inputPwd=输入密码
if %pwd% equ %inputPwd% ( echo 登录成功 ) else echo 密码不对
pause

TOP

  1. @echo off
  2. set pw=
  3. set /p pw=设定您的密码:
  4. echo 密码已设置。
  5. timeout /t 2
  6. cls
  7. set pw2=
  8. set /p pw2=输入您刚设定的密码:
  9. if %pw%==%pw2% (echo 登录成功) else echo 密码不对
  10. pause
  11. exit /b
复制代码
好像没有几年前的大佬做得精,不过是可以设置密码的,222楼的是固定密码
回望过去,展望未来。

TOP

  1. @echo off
  2. set a=123456
  3. set /p b=请在此输入密码:
  4. if "%b%" == "%a%" (echo 登陆成功) else (echo 密码错误)
  5. pause
复制代码
密码是123456,
不过bat中的密码太容易破解了......
一个爱好编程的小学生。

TOP

  1. @echo off
  2. title 输入密码::
  3. echo.
  4. echo ------------------------------------------------------------
  5. echo.
  6. echo         PASSWORD:::::::::::::::::
  7. echo.
  8. echo ------------------------------------------------------------
  9. echo.
  10. :123
  11. set /p a=   输入密码:   
  12. echo.
  13. if /i '%A%' equ '12345' (echo OK!) else (echo NO PASS!&&pause&&goto 123)
  14. echo 欢迎登录!!!
复制代码

TOP

@Echo off
set /p password=请输入密码
if %password%==123 (
ECHO.登录成功
) else (
ECHO.密码不对
)
pause

TOP

返回列表