我oracle 做了个自动备份的,但是如果用 exp budget/budget file=c:\filename%time%.dmp 导出会不成功,因为 %time%取了毫秒,里面就有个点,所以导出文件的时候创建文件名就有2个点存在,导致导出不成功。现在不需要那个毫秒。请问time函数改怎么写。
3 回答
元芳怎么了
TA贡献1798条经验 获得超7个赞
真的是只去掉点后的把%time%写成%time:~,8%就行了,但文件名是不允许有冒号的,建议
在此行前加三行
set "t=%time:~,8%"
set "t=%t::=%"
set "timeN=%t: =0%"
意思是 取%time%的前8位、去 : 符、如有空格改成0
然后在应用%time%位置改用 %timeN%
哆啦的时光机
TA贡献1779条经验 获得超6个赞
@ECHO OFF
setlocal EnableDelayedExpansion
:TIME
CLS
SET T=%time%
SET S=!T:~0,1!
IF /I !S! GEQ 1 (
SET FT1=!T:~0,2!!T:~3,2!!T:~6,2!
SET FT2=!T:~0,2!点!T:~3,2!分!T:~6,2!
) ELSE (
SET FT1=0!T:~1,1!!T:~3,2!!T:~6,2!
SET FT2=0!T:~1,1!点!T:~3,2!分!T:~6,2!
)
ECHO.!FT1!
ECHO.!FT2!
PING -n 2 LOCALHOST>NUL
GOTO TIME
- 3 回答
- 0 关注
- 797 浏览
添加回答
举报
0/150
提交
取消