1 cmd.exe
我正在使用 robocopy 命令创建备份系统,我已成功复制文件夹,但日期戳错误。文件夹以日期和时间为前缀。
robocopy 命令是这样的:
robocopy U:\Data\ X:\Private\Backups\FolderName_%date:/=-%-(%time::=-%) /e
Run Code Online (Sandbox Code Playgroud)
文件夹外显示如下:
FolderName_09-11-2013-(20-24-06.60)
我唯一想改变的是日期,我想将月份显示为一个只有前 3 个字符的字符串,比如 Oct.
有人可以指导我。谢谢。
请注意,使用%date%非常依赖 Windows 版本和地区。每种语言/地区都有自己的设置,用户也可以更改此设置。不是真正可靠的获取日期的方法。
获得正确日期的最有效方法是使用wmic OS Get localdatetime. 我不确定你是否可以用同样的方式获得月份名称,所以在这里我只是使用了一些 if 语句来获得月份名称:
@echo off
for /f "delims=" %%a in ('wmic OS Get localdatetime ^| find "."') do set dt=%%a
set year=%dt:~0,4%
set month=%dt:~4,2%
set day=%dt:~6,2%
if %month%==01 set month=jan
if %month%==02 set month=feb
if %month%==03 set month=mar
if %month%==04 set month=apr
if %month%==05 set month=may
if %month%==06 set month=jun
if %month%==07 set month=jul
if %month%==08 set month=aug
if %month%==09 set month=sep
if %month%==10 set month=oct
if %month%==11 set month=nov
if %month%==12 set month=dec
robocopy U:\Data\ X:\Private\Backups\FolderName_%day%-%month%-%year%-(%time::=-%) /e
Run Code Online (Sandbox Code Playgroud)
我知道这不是“单线”,但我认为这是获得日期的最可靠方式。
| 归档时间: |
|
| 查看次数: |
9061 次 |
| 最近记录: |