标题: [日期时间] 批处理无法正确获取0点至9点之间的时间是什么原因 [打印本页]
作者: mhdd30 时间: 2014-5-8 01:26 标题: 批处理无法正确获取0点至9点之间的时间是什么原因
本帖最后由 pcl_test 于 2016-10-14 23:32 编辑
批处理输出文件午夜12点时间为何消失?
今日由于服务器需要自动备份,于是就写了一个批处理,但是后来发现,时间输出有问题,表现为上午10点之前的时候这段时间,后面的时间和文件后缀输出就没了,其他时间正常,下面是代码
也就是说上午 0点至9 点 这段时间内输出是不正常的。- cd \
- cd C:\ken\SQL\bin
- mysqldump -umose -p123456 dbname > D:\aaa\SQL\%date:~0,4%-%date:~5,2%-%date:~8,2%_%time:~0,2%-%time:~3,2%-%time:~6,2%.sql
复制代码
比如现在的时间是2014-05-06 00:12:13,如果按照脚本来,正常的应该是 输出文件为 “ 2014-05-06_00-12-13.sql ”,但是现在输出的是“ 2014-05-06_ ”后面的时间没了,文件的后缀也跟着没了,这个是啥情况?请教各位大神指点一下。多谢了
作者: apang 时间: 2014-5-8 10:30
0~9点时,%time%值前面有一个空格
作者: mhdd30 时间: 2014-5-8 14:01
0~9点时,%time%值前面有一个空格
apang 发表于 2014-5-8 10:30
请教大神,那我这个脚本应该怎么写才会正常获取数值,还请多多赐教,谢谢
作者: CrLf 时间: 2014-5-8 16:36
本帖最后由 CrLf 于 2014-5-8 16:38 编辑
路径加引号即可:
"D:\aaa\SQL\%date:~0,4%-%date:~5,2%-%date:~8,2%_%time:~0,2%-%time:~3,2%-%time:~6,2%.sql"
也可以用转义符:
D:\aaa\SQL\%date:~0,4%-%date:~5,2%-%date:~8,2%_^%time:~0,2%-%time:~3,2%-%time:~6,2%.sql
作者: PowerShell 时间: 2014-5-9 10:08
原来是0---9点之间,你却说午夜12点消失,搞的跟午夜凶铃是的,吓唬人哩
powershell 生成日期时间更简单,
powershell代码- get-date -format yyyy-MM-dd_hh-mm-ss
复制代码
返回
2014-05-09_10-02-13 ----每输入一遍,返回一行,命令格式不比bat容易理解么?
2014-05-09_10-02-39 -----中间的分隔符,可以自定义,中划线,下划线,斜线,年月日等。
2014-05-09_10-05-00
2014-05-09_10-05-03
作者: PakTC 时间: 2014-5-9 11:30
回复 5# PowerShell
你不问问人家服务器上面有没有powershell? 服务器系统版本? 装powershell方不方便?
作者: CrLf 时间: 2014-5-9 17:42
一个另类的日期格式化方式:- @echo off
- set rar="C:\Program Files\WinRAR\rar.exe"
- %rar% a -agyyyy_mm_dd_hh_mm_ss .rar %0
- for /f "skip=3 tokens=2*" %%a in ('@%rar% a -agyyyy_mm_dd_hh_mm_ss .rar "%~s0"') do set dt=%%b
- echo %dt%
- pause
复制代码
好吧其实是鸡肋
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |