1

我正在制作一个批处理文件,用于复制我的 Google 书签并将它们粘贴到另一个名为“书签备份”的文件夹(有点像备份)。我想让脚本每天在一天结束时运行,这样我就可以随时备份(可能使它成为计划任务),所以我插入了一个命令来创建一个新文件夹(在名为备份的文件夹内书签)称为“备份”,并在每次运行脚本时将其递增“1”(例如:backup1;backup2;等)。我需要帮助获取我刚刚复制的文件并将其粘贴到增量文件夹中。这是脚本,它复制并增加文件夹,但我不知道如何使复制的文件进入增加的文件夹。

::this script backs up your Chrome bookmarks. 
::Checks to see if the folder exits and makes a new folder incremented by 1

@echo off
setlocal enableDelayedExpansion
set "baseName=Backup"
set "n=0"
for /f "delims=" %%F in (
    '2^>nul dir /b /ad "%baseName%*."^|findstr /xri "%baseName%[0-9]*"'
) do (
    set "name=%%F"
    set "name=!name:*%baseName%=!"
    if !name! gtr !n! set "n=!name!"
)
set /a n+=1
md "%baseName%%n%"


xcopy "C:\Users\jnicholas\AppData\Local\Google\Chrome\User Data\Default\bookmarks"  "C:\Users\jnicholas\Desktop\backup of bookmarks\"
pause

xcopy "C:\Users\jnicholas\AppData\Local\Google\Chrome\User Data\Default\bookmarks.bak"  "C:\Users\jnicholas\Desktop\backup of bookmarks"
pause

move /y | /-y "C:\Users\jnicholas\Desktop\backup of bookmarks\bookmarks" "C:\Users\jnicholas\Desktop\backup of bookmarks\"%baseName%%n%""
4

2 回答 2

0

我建议使用时间戳而不是顺序编号。这里也是一个命令中的所有内容,它与用户无关。

@xcopy "%LocalAppData%\Google\Chrome\User Data\Default\bookmarks*" "%UserProfile%\Desktop\Backup of Bookmarks\%Date:~10,4%-%Date:~4,2%-%Date:~7,2%\" /I /Y

这会将bookmarksbookmarks.bak文件复制到“书签备份”文件夹内的时间戳文件夹。

于 2013-07-03T20:58:14.713 回答
0

如果您使用的是 XP Pro 或更高版本,那么这将为您的备份创建一个带有日期和时间戳的文件夹。日期和时间格式与 PC 上的本地区域设置无关。

@echo off
for /f "delims=" %%a in ('wmic OS Get localdatetime  ^| find "."') do set dt=%%a
set datestamp=%dt:~0,8%
set timestamp=%dt:~8,6%
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 stamp=%YYYY%-%MM%-%DD%_%HH%-%Min%-%Sec%
echo stamp: "%stamp%"
echo datestamp: "%datestamp%"
echo timestamp: "%timestamp%"

xcopy "C:\Users\jnicholas\AppData\Local\Google\Chrome\User Data\Default\bookmarks"  "C:\Users\jnicholas\Desktop\backup of bookmarks\%stamp%\"

xcopy "C:\Users\jnicholas\AppData\Local\Google\Chrome\User Data\Default\bookmarks.bak"  "C:\Users\jnicholas\Desktop\backup of bookmarks\%stamp%\"
pause
于 2013-07-04T09:45:59.143 回答