标题: [日期时间] 批处理获取系统时间如何在小于10的数值(个位数)前补0/补零 [打印本页]
作者: ywjbycd 时间: 2014-2-10 10:57 标题: 批处理获取系统时间如何在小于10的数值(个位数)前补0/补零
本帖最后由 pcl_test 于 2016-9-26 12:47 编辑
- set time0=%time:~0,2%
- if %time0% leq 9 (set %time0%=0%time:~1,1%) else (set %time0%=%time:~0,2%)
- echo %time0%
复制代码
这样写完还是 9的状态,这段代码是我从网上复制的.大致意思我明白,就是格式上好像有问题,没有达到效果.求大神们帮忙修改一下.
作者: xxpinqz 时间: 2014-2-10 11:07
- @echo off
- set/a time0=%time:~0,2%+100
- echo %time0:~-2%
- pause
复制代码
作者: ywjbycd 时间: 2014-2-10 11:12
谢谢啦 受教了...
作者: ywjbycd 时间: 2014-2-10 11:47
追问,大神请问 在echo %time0:~-2%后 假如结果是09 如何把这个09变成一个字符串 重新set一个a=09.在10点的时候echo %time0:~-2%这个会变成10 然后这个a还等于09.
目的就是假如9点整我做个文件的备份,等都做完了可能要10点了.那么我ftp传的时候如果还用这个%time0:~-2% 那么取名的时候就会找不到这个文件 因为以前那个文件是09 现在这个变成10 系统会找不到10这个文件 就传不过去了.
求大神继续回复.
作者: PowerShell 时间: 2014-2-10 12:07
http://www.bathome.net/thread-28199-1-2.html [PowerShell每日技巧]获取昨天的日期、时间-比如零点(20131226)
http://www.bathome.net/thread-25932-1-1.html powershell送你把,解决日期计算类问题的金钥匙!
楼主想干嘛?去当前时间减10小时的powershell命令为:复制代码
作者: DAIC 时间: 2014-2-10 12:30
回复 4# ywjbycd
把完整代码贴出来看看
作者: ywjbycd 时间: 2014-2-10 13:30
我就想我现在备份一个文件 文件名字是2014-12-10-09 (09是当前的小时)
2014-12-10-09 代码是
set date0=%date:~0,4%-%date:~5,2%-%date:~8,2%-
set/a time0=%time:~0,2%+100
set dt=%date0%%time0:~0,2%
生成一个文件比如是文本格式 那么假设这个文本名字是2014-12-10-09.txt
那么这个文本是在9点生成的.生成完文本我ftp到另外一台主机,把这个文本上传.假如生成这个文本需要一个小时的时间.那么现在就是10点.在ftp过程put的时候 我该怎么选择命名文件呢 要是还用上边的脚本 那么就该变成2014-12-10-10了 并不是2014-12-10-09.
所以请教一下如何把这个2014-12-10-09变成一个常量.然后我在ftp put的时候可以准确的去查找这个名字.不至于找不到文件.
注:生成备份文件(txt文件),ftp(文件上传)都包括在一个bat里边.不会分开运行.
作者: terse 时间: 2014-2-10 23:39
dt的值不是吗
作者: ywjbycd 时间: 2014-2-11 09:33
dt的值是 但是到了10点dt的值就会变化了吧 就变成10了 不是09了吧
作者: DAIC 时间: 2014-2-11 13:14
回复 9# ywjbycd
到了10点dt的值不会变化
作者: ywjbycd 时间: 2014-2-11 13:20
哦?那我试试 谢谢
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |