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

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

[复制链接]
发表于 2008-11-14 20:42:54 | 显示全部楼层
  1. @echo off
  2. set psw=123
  3. set /p input=enter password:
  4. if %input%==%psw% (echo right!) else (echo error!)
  5. pause>nul
复制代码

评分

参与人数 1PB +2 收起 理由
wxcute + 2 加油

查看全部评分

发表于 2008-11-16 08:28:32 | 显示全部楼层
  1. @echo off
  2. echo -----------登陆器--------
  3. set password=123
  4. echo 请输入密码:
  5. set /p mypassword=
  6. ::echo %mypassword%
  7. if %mypassword% ==%password% (echo 密码正确) else echo 密码不对
  8. pause>nul

  9. 请楼主指示代码的问题。。
复制代码

[ 本帖最后由 sd6733531 于 2008-11-16 08:29 编辑 ]

评分

参与人数 1PB +2 收起 理由
wxcute + 2 没有什么大问题阿,已经达到要求了。

查看全部评分

 楼主| 发表于 2008-11-16 19:08:52 | 显示全部楼层

回复 17楼 的帖子

要说问题嘛,就是直接回车时会出错。
因为直接回车时%mypassword%是空的,即未定义,执行到 if 这句时就出错。

要改就加个引号:
if "%mypassword%" =="%password%"
发表于 2008-11-18 11:06:02 | 显示全部楼层
看看我的=_=
  1. @echo off
  2. set /a flag=0
  3. :again
  4. if %flag% equ 3 echo "Malicious user!!!"&goto end
  5. set /p szEnter="请输入密码:"
  6. set /a flag = %flag% + 1
  7. if "%szEnter%" == "bathome" echo "Welcome!My master!"&goto end
  8. echo "密码错误!"
  9. goto again
  10. :end
  11. pause>nul
  12. exit
复制代码

[ 本帖最后由 stalker 于 2008-11-18 12:04 编辑 ]

评分

参与人数 1PB +4 收起 理由
wxcute + 4 自己加了个多次密码输入,很不错。

查看全部评分

发表于 2008-11-18 13:22:35 | 显示全部楼层
@echo off
set password=123
set /p var=please input password:
if %var% equ %password% (echo pass!) else (echo wrong!)
pause

评分

参与人数 1PB +2 收起 理由
wxcute + 2 鼓励一下

查看全部评分

发表于 2008-11-25 15:01:22 | 显示全部楼层
@echo off
:kl
set /p b=请输入
if %b% equ 123 echo 密码输入正确
if not %b% equ 123 echo 密码输入错误请重新输入&ping -n 2 127.1>nul&cls&goto kl
pause

评分

参与人数 1PB +4 收起 理由
wxcute + 4 不错

查看全部评分

发表于 2008-12-7 17:38:08 | 显示全部楼层
  1. @echo off
  2. set mm=1234
  3. :loop
  4. set /p var=请输入密码
  5. cls
  6. if %var%==%mm% (
  7. echo 密码正确
  8. ) else (
  9. echo 密码错误,请重新输入
  10. goto loop
  11. )
  12. pause>nul
复制代码
批处理安全性太差了,似乎不适合干这工作吧。

[ 本帖最后由 firewolf85 于 2008-12-7 17:42 编辑 ]

评分

参与人数 1PB +2 收起 理由
wxcute + 2 鼓励,这是个练习题,目的是让新手掌握set/ ...

查看全部评分

发表于 2008-12-12 10:38:12 | 显示全部楼层
  1. @echo off
  2. set a=123
  3. set /p b=请输入密码:
  4. if %b%==%a% (echo 密码正确) else (echo 密码错误)
  5. pause
复制代码


怎么弄成 代码 的样子呢?谢谢

[ 本帖最后由 qqha001 于 2008-12-12 11:29 编辑 ]

评分

参与人数 1PB +2 收起 理由
wxcute + 2 如何用 code 看这个帖子: http://bbs.b ...

查看全部评分

发表于 2008-12-19 09:46:37 | 显示全部楼层
@echo off
color 1a &mode con cols=25 lines=10
set num=101
echo.
set /p a=  请输入密码:
if %a%==%num% (echo   登录成功) else (echo   密码不对)
echo   任意键退出!
pause>nul

评分

参与人数 1PB +2 收起 理由
wxcute + 2 鼓励

查看全部评分

发表于 2008-12-19 10:06:57 | 显示全部楼层
限制最多尝试登录次数为3的密码检验登录:
@echo off
title Edit By steven007
color 1a &mode con cols=35 lines=10
echo ------------密码检验--------------
set i=3
:loop
set num=101
echo.
set /p a=   请输入密码:
if %a%==%num% (echo    登录成功) else (echo    密码不对 )
set /a i=%i%-1
if %i%==0 goto exit
echo    你还可以尝试%i%次!
goto loop
:exit
echo    累计三次输入错误,任意键退出!
pause>nul
发表于 2008-12-19 10:20:11 | 显示全部楼层
楼上的代码在登录成功的情况下还继续执行loop循环,更新代码如下:
@echo off
title Edit By steven007
color 1a &mode con cols=35 lines=10
echo ------------密码检验--------------
set i=3
:loop
set num=101
echo.
set /p a=   请输入密码:
if %a%==%num% (echo    登录成功&goto right) else (echo    密码不对 )
set /a i=i-1
if %i%==0 goto exit
echo    你还可以尝试%i%次!
goto loop
:exit
echo    累计三次输入错误,任意键退出!
pause>nul
:right
pause>nul
发表于 2008-12-22 23:04:00 | 显示全部楼层
代码如下:
@echo off
:start
set /p psw=请输入密码(三位):
if "%psw%" equ "123" (echo pass!) else (echo wrong,please input again!)
goto start

疑问:
1.如果先键入123,显示 pass,同时再跳到请输入密码:,此时我直接回车,也显示pass  (显然这是很危险的。)
2.所以如何屏蔽这种情况呢?  多谢指点!

评分

参与人数 1PB +2 收起 理由
wxcute + 2 在标签:start下加句[code]set psw=[code]就 ...

查看全部评分

发表于 2008-12-22 23:07:44 | 显示全部楼层
@echo off
:start
set /p psw=请输入密码(三位):
if "%psw%" equ "123" (echo pass!) else (echo wrong,please input again!)
set "psw="
goto start

哈哈,不好意思,解决好了。来出来和大家分享一下。
让psw的变量置空值就行,可以规避以上问题。
发表于 2008-12-23 12:11:03 | 显示全部楼层
引用wxcute 话:
在标签:start下加句[code]set psw=[code]就可以了,另:标签最好不用保留字,加个线_start或用其他如begin好些

谢谢。成功验证你的话!下次避免出现保留字,多谢提醒。同时让我明白了,原来前面加下划线的意义了。
发表于 2008-12-27 12:49:21 | 显示全部楼层

这个是原创的,一个帖一个帖看下来没看到重复的!

@echo off
:kaishi
set /p a=要使用本程序需要先输入密码:
if "%a%"=="214968959" goto zhengque
echo 输入错误
pause>nul
goto kaishi
:zhengque
echo 输入正确
pause>nul

评分

参与人数 1PB +1 收起 理由
wxcute + 1 不要骄傲哦,除了没用 code 括起来,与大家 ...

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 06:51 , Processed in 0.023715 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表