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

[日期时间] 批处理BAT怎样实现倒计时周期?

我做了一个简单的批处理 但是我想加一个前面的认证是否可以? 比如像做一个30天的周期 每天都会减去一天到“0”的时候需要一个固定密码去认证(这个密码可以写在代码里面不需要动态),如果错误就不能使用 如果密码正确在重新计算30天的倒计时周期 不知道这个能不能实现呢?
  1. @echo off
  2. ::ping -n 5 127.1>nul
  3. md C:\log
  4. echo 用户%username% 于%date% %time%登录系统>>c:\log\login.txt
复制代码

没人帮助吗?

TOP

如果连续30天都没有输入正确的密码,将会发生什么事情?

TOP

回复 3# DAIC


    可以删除自己 就可以了 这个应该可以很简单的实现。就是倒计时的比较难 使用哪种方法记录剩余天数或者是累计开启的次数,到达一个次数就删除自己。

TOP

剩余天数或者是累计开启的次数记录在login.txt里不行吗 或者记录在BAT文件自身也可

TOP

回复 5# terse


    TXT容易被改 请教下 如何记录在BAT自身?

TOP

@echo off
set /a cishu=50
set /a ci=1
for /f %%a in (ci.txt) do set /a ci=%%a+1
echo %ci% >ci.txt
if %ci%== %cishu% goto a
set /a yu=%cishu%-%ci%

这个是建立TXT的50次使用 次数限定只要有人删除TXT次数就会重新计算了

TOP

回复 6# lion991128


    记录在BAT自身里面也能被修改啊。你是打算bat转exe是吧

TOP

回复 6# lion991128
记录运行次数的
  1. :30
  2. @echo off
  3. set /ps=<%~0
  4. set s=%s::=%
  5. set /a s-=1,m=30-s
  6. echo 运行%m%次
  7. for /f "skip=1 delims=" %%i in ('type %~s0') do (
  8.     if defined s >%~s0 echo :%s%&set "s="
  9.     >>%~s0 echo %%i
  10. )
  11. pause
复制代码

TOP

回复 8# DAIC


是的 最好是这样 但是现在好像转成EXE就没法用del %0这个命令删除自己了。。。。。

TOP

回复 9# terse


    请教下 这个记录次数我是否能把%m%中的数值读取如果到50次或者到达一个次数就删除自己呢?

TOP

回复 11# lion991128
修改第一行数字即可
  1. :50
  2. @echo off
  3. set /ps=<%~0
  4. set /a "s=%s::=%-1"
  5. if %s% equ 0 del %~s0
  6. for /f "skip=1 delims=" %%i in ('type %~s0') do (
  7.     if defined s >%~s0 echo :%s%&set "s="
  8.     >>%~s0 echo %%i
  9. )
  10. pause
复制代码

TOP

回复 12# terse


   第一行的数字是怎么才能取它的值呢?

TOP

回复 13# lion991128


    是第三行取到的
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 14# Batcher


    恩 了解了  多谢

TOP

返回列表