前提:
脚本每n秒运行一次,这将创建定义文件到定义位置的备份。创建n个备份后,清除(删除)过期的备份。
问题:
我设法开始使用此版本来备份文件夹并删除较旧的verisons,但当我尝试使用特定文件时“找不到文件”。我已经为此抓耳挠腮了几个小时,我可能错过了一些小东西。例如,我不想简单地删除所有. xlsx文件,因为Target文件夹中可能会有多个不同的. xlsx文件。如果有3个较新版本可用,我只想删除旧版本的“File1”。
有什么办法可以做到这一点吗?正如您在下面看到的,我尝试了通配符,但没有运气...
请帮助:(
变量:
- Schedule=60 (Time inseconds between each backup)
- NumFiles=3 (How many backup versions to keep)
- File1Path=D:\Source (Location to copy files from)
- File1=backmeup.xlsx (Filename & extension)
- BackupPath=D:\Target (Location to copy files to)
代码片段:
@echo off
Color 02
mode con: cols=150 lines=25
:Start
SET Schedule=60
SET NumFiles=3
SET File1Path=D:\Source
SET File1=backmeup.xlsx
SET BackupPath=D:\Target
echo Press any key to begin.
pause >nul
echo.
:Single1
FOR /F %%a IN ('WMIC OS GET LocalDateTime ^| FIND "."') DO SET DTS=%%a
SET DateTime=%DTS:~0,4%-%DTS:~4,2%-%DTS:~6,2%@%DTS:~8,2%%DTS:~10,2%
IF DEFINED File1Path (
xcopy "%File1Path%\%File1%" "%BackupPath%\_BACKUP_%DateTime%_%File1%*" /h /d /y /c /i /q /r /k >nul
( for /f "skip=%NumFiles% delims=" %%F in ('dir "%BackupPath%" /b /a:-dh /o:-d "%File1%"') do echo del /q "%BackupPath%\%%F"
( goto SingleDone ))) ELSE ( goto End )
:SingleDone
echo Backups created - %DateTime%
TIMEOUT /T %Schedule% /NOBREAK
GOTO Single1
:End
echo Something is not defined or incomplete.
echo Press any key to exit.
pause >nul
exit
要进行备份,最简单的方法就是使用xcopy。要删除旧文件/目录,请使用以下命令
forfiles -p "C:\what\ever" -s -m *.* -d <number of days> -c "cmd /c del @path"
GitLab允许使用简单的命令获取存储库的备份副本。 在本章中,我们将讨论如何在GitLab中进行备份: 步骤(1): 首先,使用SSH(Secure Shell)登录到您的GitLab服务器。 步骤(2): 使用以下命令创建GitLab的备份: 步骤(3): 您可以通过添加环境变量SKIP来从备份中排除某些目录,如下所示: 步骤(4): 备份tar文件将在默认的目录中创建。 浏览到此路径并键入以
问题内容: 我需要备份带有日期时间戳的现有文件夹,并将其替换(删除并重新创建)为文件夹内的新内容。 有人有脚本可以做到这一点吗? 我尝试了以下代码,其中 问题答案: 带参数的 命令 以配置的国家/地区为当前用户帐户定义的格式输出当前日期。可以通过引用动态 环境变量 (例如使用)来访问完全相同的日期字符串。 带参数的 命令 以配置的国家/地区为当前用户帐户定义的格式输出当前时间。可以通过引用动态 环
我想创建一个符合这些要求的备份Batch文件: 要求: 所以我试过这个 注意:/v=验证,/y=无提示/e=细分/d=仅更改副本 但是,在运行批处理之后,它没有删除需求2中提到的文件/文件夹。此外,我不知道如何满足要求4 我搜索了很多问题,但他们似乎没有满足要求2的代码 我不想在Win7中使用备份工具,因为它很重 当你做项目时,备份非常重要,我希望我的问题能帮助很多其他程序员。 有人能知道一个好的
MySQL的备份-mysqldump命令的使用 备份数据库的参数 Myisam表常规备份(参数) InnoDB表常规备份(推荐使用的存储引擎) 普通方式备份数据库 多实例指定sock文件备份数据库test并使用gzip压缩 使用egrep查看备份的文件的sql内容 -B参数 备份多个库 备份库下的表 备份库下的某个表 备份库下的多个表 -d参数 备份表结构 -t参数 备份表数据 -F参数 刷新二进
常规属性 在此选项卡,你可以查看服务器和数据库的信息。如有需要,可为备份文件输入一个注释。 对象选择 在此选项卡,选择你想备份的数据库对象。 运行期间的全部<对象> (*) 所有的数据库对象将会备份,所有新添加的数据库对象也将会被备份而不必修改备份配置文件。 自定义 只备份已勾选的数据库对象。然而,如果在创建备份配置文件后,在数据库和/或模式中添加任何新的数据库对象,新建的数据库对象将不会被备份,
常规属性 在此选项卡,你可以查看服务器和数据库的信息。如有需要,可为备份文件输入一个注释。 对象选择 在此选项卡,选择你想备份的数据库对象。 运行期间的全部<对象> (*) 所有的数据库对象将会备份,所有新添加的数据库对象也将会被备份而不必修改备份配置文件。 自定义 只备份已勾选的数据库对象。然而,如果在创建备份配置文件后,在数据库和/或模式中添加任何新的数据库对象,新建的数据库对象将不会被备份,