首页 > 解决方案 > 如果文件夹名包含空格并且文件名在批处理文件中有时间戳,如何传递文件位置?

问题描述

这是我正在尝试进行正常导出备份的批处理文件,但DB Backup由于file="D:\DB Backup\sys_12c_%fullstamp%.dmp". 如果文件夹名称中没有空格,则它可以工作文件,即DBBackup.

for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"
set "YY=%dt:~2,2%" & set "YYYY=%dt:~0,4%" & set "MM=%dt:~4,2%" & set "DD=%dt:~6,2%"
set "HH=%dt:~8,2%" & set "Min=%dt:~10,2%" & set "Sec=%dt:~12,2%"
set "fullstamp=%YYYY%%MM%%DD%_%HH%%Min%%Sec%"
exp system/manager full=y file="D:\DB Backup\sys_12c_%fullstamp%.dmp" log="D:\DB Backup\sys_12c_%fullstamp%.log"

标签: batch-filedatabase-backups

解决方案


使用三重引号:

exp system/manager full=y file="""D:\DB Backup\sys_12c_%fullstamp%.dmp""" log="""D:\DB Backup\sys_12c_%fullstamp%.log"""

推荐阅读