0

我正在尝试为自动备份设置 7zip,但在输出文件名方面遇到了问题。

我尝试使用 %date% 命令,但它只在我的备份中创建了 2 个目录。

C:\用户\桌面\Sun 11\07\2010.7z

我怎样才能让它只记录日期和月份?

C:\用户\桌面\Sun 11-07-2010.7z

4

3 回答 3

1

尝试

7z a %DATE:~-4%-%DATE:~4,2%-%DATE:~7,2%.7z *.*     for (YYYY-MM-DD)

或者

7z a %DATE:~7,2%-%DATE:~4,2%-%DATE:~-4%.7z *.*     for (DD-MM-YYYY)

(*.* 是要备份的文件的掩码)

于 2010-11-08T04:20:24.733 回答
0

您可以使用 WMI 以特定格式获取日期详细信息。date(和环境变量)的输出的问题%date%在于它是非常特定于语言环境的。

如果你执行:

wmic path win32_localtime get day^,month^,year^ /format:csv

您将看到需要处理的输出。

以下脚本将为您提供所需的yyyy-mm-dd格式(使用星期几作为主排序键不是一个好主意):

@echo off
for /f "skip=2, tokens=2-4" delims=," %%a in ('wmic path win32_localtime get day^,month^,year^ /format:csv') do (
    set /a ymd = 10000 * %%c + 100 * %%b + %%a
)
set ymd=%ymd:~0,4%-%ymd:~4,2%%ymd:~6,2%
echo %ymd%
于 2010-11-08T04:32:18.710 回答
0

你用的是bat文件吗?看这里http://www.tech-recipes.com/rx/956/windows-batch-file-bat-to-get-current-date-in-mmddyyyy-format/

于 2010-11-08T04:22:47.553 回答