美文网首页
自动记录上班时间

自动记录上班时间

作者: 你是我温暖的小太阳 | 来源:发表于2019-11-08 15:19 被阅读0次

    每天上班打卡,弹性工作时间,可是下班时间就是记不住,哎,如果有什么办法,能记录我们上班时间,自动记录下班时间就好了。

    介绍

    今天介绍的主角批处理就能完成上面的事情,引用百度百科一段话:

    批处理是一种简化的脚本语言,也称作宏。它应用于DOS和Windows系统中,它是由DOS或者Windows系统内嵌的命令解释> 器(通常是COMMAND. COM或者CMD.EXE)解
    批处理文件图标释运行。类似于Unix中的Shell脚本。批处理文件具有.bat或者.cmd的扩展
    命令行窗口
    名,其最简单的例子,是逐行书写在命令行中会用到的各种命令。更复杂的情况,需要使用if,for,goto等命令控制程> > 序的运行过程,如同C,Basic等中高级语言一样。

    主要思路

    1. 开机后,电脑自动执行批处理文件,记录上班时间,同时计算出下班时间,写入指定A文件
    2. 桌面创建快捷方式,随时查看A文件

    创建批处理文件

    找一个目录创建文件act.bat,并将如下代码复制到文件中,保存退出。

    @echo off
    
    copy time.txt temp.txt
    del time.txt
    
    ::我的工作时间为9小时30分钟
    set workHour=9
    set workMinute=30
    
    set year=%date:~0,4%
    set month=%date:~5,2%
    set day=%date:~8,2%
    
    set /a hour=%time:~0,2%+%workHour%
    set /a minute=%time:~3,2%+%workMinute%
    set second=%time:~6,2%
    
    ::计算下班时间
    if %minute% geq 60 (
    set /a hour=%hour%+1
    set /a minute=%minute%-60
    )else (
    set /a hour=%hour%+0
    set /a minute=%minute%-0
    )
    
    ::小时格式化
    set hourStr=
    
    if %hour% geq 10 (
    set  hourStr=%hour%
    )else (
    set  hourStr=0%hour%
    )
    
    ::分钟格式化
    set minuteStr=
    
    if %minute% geq 10 (
    set  minuteStr=%minute%
    )else (
    set  minuteStr=0%minute%
    )
    
    echo 开机时间是 %date% %time%  我走的时间是  %date%  %hourStr%:%minuteStr%:%second% >>time.txt
    type temp.txt>>time.txt
    del temp.txt
    
    

    创建开机自启动任务

    打开自启动目录,创建act.bat的快捷方式,将快捷方式复制到自启动目录即可,具体操作如下:

    1. 打开运行窗口
    2. 在打开的运行窗口中输入命令shell:startup,然后点击确定按钮。
    3. 这样就可以打开当前用户的启动文件夹,同样把需要启动的应用快捷方式复制到此文件夹中,也可以实现该文件随系统自动启动。

    详细过程参考:设置自启动任务

    查看下班时间

    双击act.bat文件,即可模拟开机过程,在act.bat目录中会创建time.txt文件,即可查看下班时间啦

    之后每天开机电脑都会自动工作了,完美!!!

    至此大功告成啦~~

    相关文章

      网友评论

          本文标题:自动记录上班时间

          本文链接:https://www.haomeiwen.com/subject/jcxwbctx.html