使用cmd备份文件夹

使用cmd备份文件夹,cmd,backup,Cmd,Backup,我正在尝试使用cmd创建备份脚本。 这是我目前的代码: X: MKDIR "2017MMDD XXX Restore Profile" CD "X:\2017MMDD XXX Restore Profile" MKDIR "Desktop" MKDIR "Favorites" MKDIR "My Documents" MKDIR "Pictures" MKDIR "Videos" XCOPY "C:\Users\%username%\Desktop" "X:\2017MMDD XXX Resto

我正在尝试使用cmd创建备份脚本。 这是我目前的代码:

X:
MKDIR "2017MMDD XXX Restore Profile"
CD "X:\2017MMDD XXX Restore Profile"
MKDIR "Desktop"
MKDIR "Favorites"
MKDIR "My Documents"
MKDIR "Pictures"
MKDIR "Videos"
XCOPY "C:\Users\%username%\Desktop" "X:\2017MMDD XXX Restore    Profile\Desktop"
XCOPY "C:\Users\%username%\Favorites" "X:\2017MMDD XXX Restore Profile\Favorites"
XCOPY "C:\Users\%username%\Documents" "X:\2017MMDD XXX Restore Profile\My Documents"
XCOPY "C:\Users\%username%\Pictures" "X:\2017MMDD XXX Restore Profile\Pictures"
XCOPY "C:\Users\%username%\Videoes" "X:\2017MMDD XXX Restore Profile\Videos"



Pause
问题是它只复制文件,而不复制文件夹(如果有)。我需要一个功能,将复制文件和文件夹


另外,cmd是否有写入日期的命令?(而不是2017MMDD,您需要在其中填写其余内容):

要回答日期部分的问题,命令可以提供当前日期。该命令的“快捷方式”是动态环境变量
%date%
(仅当您没有使用其他值覆盖该变量时)。如果将这两种格式中的一种与a结合起来,则可以根据日期的格式轻松提取年份、月份和日期。在向您展示解决方案之前,我必须警告您:其中
date/t
命令和
%date%
变量返回的日期取决于您的设置(我认为位置和/或语言设置可能取决于windows版本)。在我的例子中,格式是
dd-dd/MM/YYYY
,带有:

  • dd
    一周中某一天的两个字母
  • DD
    当月的当天(两位数格式)
  • MM
    一年中的当前月份(两位数格式)
  • YYYY
    当前年份(4位格式)
因此,在我这方面,为了得到日期、月份和年份,我必须这样使用:使用
/
(空白)作为分隔符,提取分别代表日期、月份和年份的第2、第3和第4个字段

@echo off

for /f "tokens=2-4 delims=/ " %%G IN ("%date%") DO (
    set day=%%G
    set month=%%H
    set year=%%I
)
echo day:   %day%
echo month: %month%
echo year:  %year%

我明白了,现在唯一的事情就是如何让它自动生成日期。阅读您正在使用的命令的帮助怎么样?在新的命令提示符窗口中键入
xcopy/?
以获取它。关于日期部分:搜索这个网站,有很多关于这个的问题和答案。
X:\2017MMDD XXX Restore Profile\Desktop
中的空格太多!正如我所说,我让它工作了。空间不是问题。