整站文件備份打包系統ASPWebPack
24KB / 06-16
整站文件備份系統ASPWebPack v1.0.2
13KB / 11-17
SyncBack Pro v6.4.3.0 中文綠色便攜版(支持ftp文件備份同步軟件
13MB / 06-02
SyncBackSE 文件備份恢復和同步工具 6.5.4.0 綠色版
11.3MB / 08-10
不同系統文件備份Bacula v2.4.2
8.47MB / 09-25
免費的文件備份軟件 FBackup v9.9.860 多語言安裝版
94.6MB / 03-28
文件備份器 V2.4 免費綠色版
118KB / 05-11
iFaith(ios固件 SHSH文件備份軟件) V1.5.9 官方英文綠色版
4.53MB / 04-27
文件備份工具 EZBackup V1.0 英文綠色免費版
100KB / 04-02
115云備份(文件備份利器) 2.0.0 綠色中文免費版
669KB / 05-18
-
CodeToos vbs實現的文件編碼查詢工具 其它 / 15KB
-
-
分秒必爭簡單個人DOS批處理工具 其它 / 9KB
-
-
-
第三方工具CIdo使用介紹(命令行窗口工具) 其它 / 40KB
-
非常批處理 批處理文本文件合集 其它 / 5.5MB
-
IIS7 添加Application 腳本代碼打包 其它 / 61KB
-
OFFICE模板一鍵修復(2012.6.14全新升級) 其它 / 34KB
-
詳情介紹
文件備份器批處理文件.直接雙擊運行.
[code]
@echo off
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: 文件備份器V2.3(for WinXP only) Code by JM 2006-11-4 QQ:13132002
:: 出處://www.cn-dos.net/forum/viewthread.php?tid=20747
::
:: 功能:1、自由指定要備份的目錄(或文件)、位置、備份時間和任務名稱
:: 2、能檢測輸入是否正確
:: 3、能生成備份日志
:: 4、能多次添加備份任務
:: 5、能批量停止指定的備份任務
:: 6、能自動刪除由本程序產生且不再使用的批處理程序和注冊表信息
:: 7、能從備份文件中恢復文件到源文件中,并保持各文件的原始屬性不變
::
:: 原理:只有當源文件修改時間比目標文件的修改時間新時才更新文件
::
:: 要修改或完善的地方:
::
:: ① 統一標記是文件還是文件夾;
:: ② 禁止把文件備份到本文件夾及其子文件夾中去
::
:: 更新歷史:
::
:: 06.11.4
::
:: 增加了記錄備份文件更新列表的功能,進一步完善日志功能;
::
:: 06.10.19
::
:: 因at命令只能以管理員權限運行,此次更新增加了用戶權限的驗證;添加了
:: xcopy的/c參數,使得復制出錯的時候(盡管出現這種情況的幾率非常低),能備份
:: 盡可能多的文件;精簡了部分代碼;
::
:: 06.9.14
::
:: 對提取文件屬性的代碼做了優(yōu)化,使得生成備份批處理的效率大大提高,
:: 感謝pengfei提供代碼;修改了幾處錯誤和疏漏;對代碼進行分塊放置以便日后
:: 的維護;此為V2.3
::
:: 06.9.3
::
:: 由于上次精簡過度,代碼運行會出錯,今天修改了一處致命錯誤,感謝
:: pengfei的測試;增加了一些操作提示和出錯檢測;
::
:: 06.8.5
::
:: 添加了備份空目錄的參數,精簡了部分代碼;
:: 06.8.1
::
:: 實現了用同一條命令復制文件和文件夾;修正了幾處錯誤;
:: 06.7.29
::
:: 精簡了獲取屬性的代碼,感謝willsort提供;
:: 06.7.28
:: 完善了對備份后的文件進行恢復的操作,使得恢復操作對文件或者文件夾
:: 都適用;此為V2.2
::
:: 06.7.1
:: 完善了對日期的檢測;
:: 06.6.29
:: 增加了恢復文件的功能;對生成后的文件的屬性進行了調整;此為V2.1;
:: 06.6.20
:: 對顯示各分區(qū)磁盤剩余空間的代碼進行了修改,只顯示磁盤的剩余空間,
:: 而不會畫蛇添足地顯示光盤剩余空間;
:: 06.6.15
:: 增加了日期和時間輸入錯誤檢測功能(感謝bagpipe提供代碼);
:: 06.6.12
:: 修改了查詢各分區(qū)剩余空間的代碼,當磁盤卷標名為中文時也能準確排版。
:: 感謝willsort作深入分析并提供代碼;當備份任務創(chuàng)建后,能自動打開備份后
:: 的文件夾和創(chuàng)建日志,以便查看備份創(chuàng)建結果;徹底刪除無用文件;精簡了部
:: 分代碼;
:: 06.6.10
:: 修正了一處錯誤;精簡了部分代碼;
:: 06.6.9
:: 更改備份日志代碼,將使備份日志體積減少近一半;更改了實現文件名自動
:: 完成這一功能的功能鍵(感謝electronixtar的提醒),但需要注冊表中的特定鍵
:: 值為默認設置(有關討論請參考//www.cn-dos.net/forum/viewthread.php?
:: tid=21091&fpage=1);
:: 06.6.6
:: 修改了部分代碼,使得當需要每天備份的功能時,避免了煩瑣的輸入;增加
:: 了文件名自動完成的功能(感謝willsort提出設想并提供代碼);此為V1.9;
:: 06.6.4
:: 增加了如下功能:當保存?zhèn)浞菸募r,如果要對文件夾進行追加或者覆蓋等
:: 操作,可先查看該文件夾下的內容再作決定;補充了備份風險提示;
:: 06.6.3
:: 對備份后文件的保存位置這部分代碼進行了修改,使得程序能自動適應備份
:: 對象為文件和文件夾兩種情況,使備份后文件夾的目錄結構得到保持,感謝
:: willsort提供代碼;當備份文件即將保存到一個已經存在的目錄下時,增加了允
:: 許追加至該目錄的選擇;
:: 06.6.2
:: 添加和修改了了如下功能:可以選擇在開機時是否自動運行備份任務程序;
:: 開始運行本程序或者停止某項備份任務時,自動刪除當前計劃任務中不再使用的
:: 備份任務程序,并刪除對應的注冊表鍵值,以減少系統垃圾;更改了備份任務程
:: 序的保存位置;去除了盤符小寫轉換為大寫的雞肋代碼;增強了路徑輸入為空時
:: 的檢測(感謝willsort提供代碼);修改了幾處錯誤;精簡了部分代碼,此為V1.8;
:: 06.5.31
:: 在注冊表中( 位置是:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\
:: CurrentVersion\Run) 增添了開機自動運行備份程序的鍵值( 以備份任務名稱作
:: 為鍵值) ,盡可能減少錯過備份的情況;如果更新了內容,則備份完畢后自動打
:: 開備份日志;修正了幾處錯誤;此為V1.7;
:: 06.5.30
:: 完善了備份流程,在列出創(chuàng)建備份任務的清單時,可更改備份任務內容;在
:: 創(chuàng)建備份任務的同時,強制啟動計劃任務服務,并立即作復制操作;顯示各磁盤
:: 分區(qū)剩余空間情況的時候,增加了顯示磁盤卷標名的功能;更改了注意事項界面
:: 中的前景色和背景色,使色調顯得明快而柔和;
:: 06.5.28
:: 增加了在每周的指定日期進行備份的功能;添加了當計劃任務出錯時提交報
:: 告的功能;完善了日志記錄功能,只有當文件更新時才會改寫日志;完善了注意
:: 事項中的內容;增加了刪除所有計劃任務的功能;此為 V1.6 ;
:: 06.5.26
:: 增加了不允許把保存路徑設置為與源文件路徑相同、或者為源文件某一目錄
:: 的功能;添加了注意事項提示功能;修正了幾處錯誤;部分代碼參照中國DOS 聯
:: 盟論壇(//www.cn-dos.net/forum) 網友bagpipe所發(fā)帖子,使一些代碼得
:: 到精簡;此為V1.5;
:: 06.5.25
:: 增加了把備份文件的保存目錄拖曳到窗口執(zhí)行的功能;增加了批量停止指定
:: 備份任務的功能;修改了幾處錯誤;精簡了部分代碼;此為V1.4;
:: 06.5.24
:: 增加了把要備份的文件拖曳到窗口執(zhí)行的功能;感謝中國DOS 聯盟論壇
:: (//www.cn-dos.net/forum)版主willsort提供代碼;此為V1.3;
:: 06.5.23
:: 修正了一處關鍵錯誤,使得備份能順利進行下去;在中國DOS 聯盟論壇
:: (//www.cn-dos.net/forum)版主willsort等網友的熱心幫助下,增強了程
:: 序輸入錯誤檢測能力,并修正了一些拼寫錯誤,在此深表謝意;
:: 06.5.22
:: 修改了顯示各分區(qū)剩余空間的代碼,使顯示界面的框線自動適應剩余空間條
:: 目下不同長度的字符;
:: 06.5.21
:: 增添了停止指定備份任務的功能,使本程序的功能進一步完善;增添了將備
:: 份后的文件設置為" 系統+ 只讀" 屬性的功能,從而在一定程度上提高了備份后
:: 的文件的安全;修正了幾處錯誤;優(yōu)化了部分代碼;此為V1.2;
:: 06.5.20
:: 頭兩天的算法存在備份不完全的弊端,今天把copy命令更改為xcopy 命令,
:: 從而使本程序能夠備份指定目錄下除空目錄之外的所有文件( 包括目錄之下還有
:: 子目錄、子目錄內含有文件的文件嵌套) ,并使代碼得到了精簡;頭兩天的代碼
:: 生成備份任務批處理的時候,因為自動命名的程序名稱是固定的,如果有不同的
:: 備份任務的話,最后一次任務將把上一次的任務刪除,今天把備份任務的命名改
:: 為手動指定;增添了多次添加備份任務的功能;此為V1.1;
:: 06.5.19
:: 增加了系統檢測功能,使得該程序只能運行于XP操作系統下;編寫輸入錯誤
:: 檢測代碼,使輸入錯誤能得到及時更改;統一了交互界面,看上去更加美觀;本
:: 來想增加指定每周的某幾天進行備份操作的功能,但是一直未能實現,只好暫時
:: 放棄,留待下幾個版本解決;優(yōu)化了部分冗余代碼;
:: 06.5.18
:: 在對本人電腦上重要資料進行備份的時候,深感手工備份的煩瑣,而網上的
:: 備份軟件又有諸多限制,正好本人在自學DOS 批處理編程,于是花了半天的時間
:: 來構思本程序的核心功能,編寫初步代碼;此為V1.0;
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
rem if not "%1"=="$" %comspec% /f:on /c %0 $ && goto :eof
:: 屏蔽掉上一句,用Tab\Shift+Tab可實現同樣功能
mode con lines=26
title 文件備份器-文件備份器
color 1f
cls
rem =========檢測系統是否支持本程序=============
:check_system
ver|find "XP">nul || goto system_error
rem =========檢測當前用戶是否具有管理員權限=============
:check_popedom
net users %username%|findstr /i "\*administrator">nul||goto popedom_error
call :del_nouse
rem =======輸入要備份文件的路徑并檢測輸入是否正確=======
:input_source
mode con lines=26
cls
color 1f
title 文件備份器-請輸入源文件路徑
echo ╭────────╮
echo ╭─────────┤選擇要備份的文件├─────────╮
echo │ ╰────────╯ │
echo │ │
echo │ 本程序能把指定文件在指定時間內備份到指定位 │
echo │ │
echo │ 置。請把要備份的文件(或文件夾)拖曳至本窗口(推薦 │
echo │ │
echo │ 做法),或者手工輸入需要備份文件的絕對路徑或相對 │
echo │ │
echo │ 路徑(請勿輸入非法符號),然后回車確認。 │
echo │ │
echo │ 自動完成文件名請按Tab\Shift+Tab,可多次選擇。 │
echo │ │
echo │ 為了不錯誤刪除數據,使用本軟件前請查看注意 │
echo │ │
echo │ 事項!切記切記! (恢復文件請按 R ) │
echo │ │
echo ╰────────────────────────────╯
echo.
echo 查看注意事項請按 1 退出請按 0
echo ──────────────────────────────
echo 查看已存在的備份任務請按 2
echo.
set source=:
set /p source= 請輸入要備份文件的路徑:
set "source=%source:"=%"
:: 上面這句為判斷%source%中是否存在引號,有則剔除。
if "%source%"==":" goto input_source
if "%source%"=="0" exit
if "%source%"=="1" goto notice
if "%source%"=="2" goto backup_task
if /i "%source%"=="r" goto revert
if not exist "%source%" goto source_noexist
for %%i in ("%source%") do if "%%~fi"=="%%~di\" goto forbid_to_backup
:: 判斷要備份的是文件還是文件夾,為以后的操作設置標志
pushd "%source%">nul 2>nul && (popd & set folder=yes)||(set folder=)
goto input_destination
:backup_task
cls
color 1f
title 文件備份器-已存在的備份任務
echo.
at
echo -------------------------------------------------------------------------------
echo.
echo ╔══════════════════════════════╗
echo ║ 如果要停止某個備份任務,請輸入該任務的ID號,然后按回車即可 ║
echo ║ ║
echo ║ 多個ID號之間用空格分隔,停止所有計劃任務請按 A ║
echo ║ ║
echo ║ 退出請按 0 ,返回上一步請按除0、A和ID數字之外的任意鍵 ║
echo ╚══════════════════════════════╝
echo.
set ID=
set /p ID= 請輸入不再需要的備份任務的ID:
if "%ID%"=="0" exit
if /i "%ID%"=="a" at /delete /yes && (call :del_nouse && goto backup_task)
:: 以下語句的作用是:如果停止了某項備份任務,則檢查硬盤上由本程序生成的bat文件中,
:: 不在at任務列表中的有哪些;如果有,則刪除該bat,同時刪除注冊表中對應的字符串值;
:: 如果沒有,則不作任何刪除操作;
(for %%i in (%ID%) do at %%i /del /yes >nul 2>nul) && (
call :del_nouse
goto backup_task
) || goto input_source
rem =======輸入文件保存路徑并檢測輸入是否正確=======
:input_destination
cls
color 1f
title 文件備份器-請輸入目標文件路徑
echo.
echo.
echo ╭────────╮
echo ╭─────────┤ 選擇保存位置 ├─────────╮
echo │ ╰────────╯ │
echo │ 操作說明: │
echo │ │
echo │ 請輸入保存位置的絕對路徑或者相對路徑 │
echo │ │
echo │ (注意:必須在半角狀態(tài)下輸入冒號和反斜杠; │
echo │ │
echo │ 請勿輸入非法的路徑名符號),或者把一個已 │
echo │ │
echo │ 存在的文件夾拖曳至本窗口,然后回車確認。 │
echo │ │
echo │ ╭────────────────╮ │
echo ╰─────┤ 查看各磁盤分區(qū)剩余空間請按 9 ├─────╯
echo ╰────────────────╯
echo.
echo 返回上一步請按 1 退出請按 0
echo ──────────────────────────────
echo.
set destination=:
set /p destination= 請輸入備份文件的保存路徑:
set "destination=%destination:"=%"
:: 上面這句為判斷%destination%中是否存在引號,有則剔除
if "%destination%"==":" goto input_destination
if "%destination%"=="0" exit
if "%destination%"=="1" goto input_source
if "%destination%"=="9" goto freesize
:: 下面一句針對文件或文件夾取保存位置的文件名
for /d %%i in ("%source%.*") do set destination=%destination%\%%~nxi
for %%i in ("%destination%") do set destination=%%~fi
set subarea=%destination:~0,1%
for %%i in ("%destination%") do if "%%~fi"=="%%~di\" goto forbid_to_build_1
echo "%destination%" | findstr /i /c:"%source%" && goto forbid_to_build_2
if not exist %subarea%:\nul goto subarea_noexist
:: 下面一句取日志名為要備份文件(夾)的文件名
for %%i in ("%source%") do set name_log=%%~ni
if exist "%destination%\%name_log%_log.log" goto whether_add
if exist "%destination%" goto whether_over
:over_write
attrib /s /d -s -h -r "%destination%\*.*">nul 2>nul
rd /q /s "%destination%">nul 2>nul
md "%destination%">nul 2>nul
(echo.
echo 備份日志)>"%destination%\%name_log%_log.log"
attrib /s /d +s +r "%destination%\*.*">nul 2>nul
:input_date
cls
color 1f
title 文件備份器-請輸備份入日期
echo ╭────────╮
echo ╭─────────┤ 請輸入備份日期 ├─────────╮
echo │ ╰────────╯ │
echo │ │
echo │ 1.若在每月的某幾天備份,請輸入從1到31的任意 │
echo │ │
echo │ 數字,比如1,3,4;若只在每月1號備份,請輸入"1,"; │
echo │ │
echo │ 2.若在每周的某幾天備份,請輸入星期幾的代碼 │
echo │ │
echo │ (M,T,W,Th,F,S,Su);如果指定日期較多,在查看任務 │
echo │ │
echo │ 列表的時候,日期一欄將用省略號顯示; │
echo │ │
echo │ 3.數字與字母不可混用;數字行或字母行首尾均無 │
echo │ │
echo │ 任何符號,其間用逗號分隔;請嚴格按照本格式填寫! │
echo │ │
echo ╰────────────────────────────╯
echo.
echo 返回上一步請按 1 退出請按 0
echo ──────────────────────────────
echo 每天都備份請按 A
echo.
set copydate=
set /p copydate= 請輸入備份日期:
if "%copydate%"=="" goto input_date
if "%copydate%"=="," goto input_date
if "%copydate%"=="0" exit
if "%copydate%"=="1" goto input_destination
if "%copydate%"=="1," goto input_time
if /i "%copydate%"=="a" goto all_date
:: 檢查日期輸入是否正確
set num=0
set char=%copydate%
for /f "tokens=1 delims=," %%i in ("%char%") do (
echo "%%i"|findstr /i "M T W Th F S Su">nul && goto check_alphabetical_date|| goto check_numerical_date
)
:check_alphabetical_date
call :check_alp
:loop_alp
set char=%char:*,=%
:check_alp
for /f "tokens=1 delims=," %%i in ("%char%") do (
echo "M T W Th F S Su"|findstr /i "%%i">nul || goto date_error
echo "%char%"|find ",">nul && goto loop_alp
)
goto input_time
:check_numerical_date
call :check_num
:loop_num
set /a num+=1
set char=%char:*,=%
:check_num
for /f "tokens=1 delims=," %%i in ("%char%") do set input=%%i
if %input% GTR 31 goto date_error
if %num% GTR 30 goto date_error
echo %char%|find ",">nul || if %num% LEQ 30 goto input_time || goto date_error
goto loop_num
:input_time
cls
color 1f
title 文件備份器-請輸入時間
echo.
echo ╭────────╮
echo ╭─────────┤ 請輸入備份時間 ├─────────╮
echo │ ╰────────╯ │
echo │ 操作說明: │
echo │ │
echo │ 請按格式輸入備份時間,多個時間用空格 │
echo │ │
echo │ 分隔。該時間用24小時制(既從00:00到23:59) │
echo │ │
echo │ 的小時:分鐘格式表示。 │
echo │ │
echo │ 例如:想分別在上午8點30分和下午4點進 │
echo │ │
echo │ 行備份,請在同一行輸入8:30 16:00(注意:兩 │
echo │ │
echo │ 個時間點之間有一個空格) │
echo │ │
echo ╰────────────────────────────╯
echo.
echo 返回上一步請按 1 退出請按 0
echo ──────────────────────────────
echo.
set copytime=
set /p copytime= 請輸入備份時間:
if "%copytime%"=="" goto input_time
if "%copytime%"=="0" exit
if "%copytime%"=="1" goto input_date
:: 檢查時間輸入是否正確
for /f "tokens=*" %%i in ("%copytime%") do set char=%%i
call :check_time
set num=0
:back
set /a num+=1
set char=%char:* =%
:check_time
for /f "tokens=1,2 delims=:" %%i in ("%char%") do (
if %%i GTR 24 goto time_error
if %%j GTR 60 goto time_error
echo %char%|find " ">nul || goto input_name
)
goto back
rem =======輸入備份任務名稱=======
:input_name
cls
color 1f
title 文件備份器-備份任務名稱
echo.
echo ╭────────╮
echo ╭─────────┤ 備份任務名稱 ├─────────╮
echo │ ╰────────╯ │
echo │ 操作說明: │
echo │ │
echo │ 請輸入備份任務的名稱,然后回車確認。 │
echo │ │
echo │ 本程序將在"系統安裝盤:\Program Files\備份 │
echo │ │
echo │ 任務程序"下生成"備份任務名稱_backup.bat" │
echo │ │
echo │ 和"備份任務名稱_revert.bat"這一對備份及恢 │
echo │ │
echo │ 復批處理。如需更改此備份任務的部分功能, │
echo │ │
echo │ 請用文本編輯工具對批處理文件進行編輯。 │
echo │ │
echo ╰────────────────────────────╯
echo.
echo 返回上一步請按 1 退出請按 0
echo ──────────────────────────────
echo.
echo.
set name=
set /p name= 請輸入備份任務的名稱:
if "%name%"=="" goto input_name
if "%name%"=="0" exit
if "%name%"=="1" goto input_time
if exist "%ProgramFiles%\備份任務程序\%name%_backup.bat" goto name_exist
call :list
echo ╔══════════════════════════════╗
echo ║ 退出請按 0 ,返回上一步請按 1 ,放棄并開始新的備份請按 B ║
echo ║ ║
echo ║ 繼續(xù)下一步請按除0、1和B之外的任意鍵 ║
echo ╚══════════════════════════════╝
echo.
set choice=
set /p choice= 請選擇操作代碼(0/1/B/其他鍵):
if "%choice%"=="0" exit
if "%choice%"=="1" goto input_name
if /i "%choice%"=="b" (
attrib /s /d -s -h -r "%destination%\*.*">nul 2>nul
rd /q /s "%destination%">nul 2>nul
goto input_source
)
goto build_backup
:notice
cls
mode con lines=40
color 8e
title 文件備份器-注意事項
echo.
echo.
echo ╔══════════════════════════════════╗
echo ║ ║
echo ║ 1. 當程序提示某路徑已存在時,強烈建議在作出覆蓋操作前先查 ║
echo ║ ║
echo ║ 看該目錄下的內容,以免程序錯誤刪除該目錄下的所有內容,給您帶 ║
echo ║ ║
echo ║ 災難性的損失。備份有風險,操作請謹慎! ║
echo ║ ║
echo ║ 2. 路徑名中,除了允許冒號和反斜杠符號緊跟盤符之外,其他位 ║
echo ║ ║
echo ║ 置不能再含有半角狀態(tài)下的以下11個符號,分別為:\、/、:、*、?、 ║
echo ║ ║
echo ║ "、<、>、(、)、|。輸入其中任意一個符號,都會引起無法預料的錯 ║
echo ║ ║
echo ║ 誤;在本程序中,文件名的命名也應遵守以上規(guī)定! ║
echo ║ ║
echo ║ 3. 如果只輸入"盤符+冒號"格式的路徑,程序會把路徑當作指定 ║
echo ║ ║
echo ║ 盤的當前路徑來處理,而不是指定盤的根目錄。比如:假設系統安裝 ║
echo ║ ║
echo ║ 在C盤,在路徑中只輸入 C: ,則并不會認為是C盤根目錄,而是C盤的 ║
echo ║ ║
echo ║ 當前路徑,默認為"C:\ducuments and settings\當前用戶名"; ║
echo ║ ║
echo ║ 4. 如果輸入的路徑不帶盤符,則作為相對路徑處理; ║
echo ║ ║
echo ║ 5. 本程序工作原理為:通過比較備份后文件與源文件的時間早晚 ║
echo ║ ║
echo ║ 來決定是否進行復制操作,因此,任何改動備份后文件修改時間的操 ║
echo ║ ║
echo ║ 作都會使程序不能及時更新源文件改動過的數據,請勿對備份后的文件 ║
echo ║ ║
echo ║ 進行改名、添加或刪除子文件等操作! ║
echo ║ ║
echo ╚══════════════════════════════════╝
echo.
echo 按任意鍵返回上一步...
pause>nul
goto input_source
:whether_over
cls
color 0c
title 文件備份器-路徑已存在
echo.
echo.
echo.
echo.
echo.
echo ________________________________________________________________________________
echo.
echo 您輸入的路徑"%destination%"已經存在,覆蓋還是追加?
echo.
echo ________________________________________________________________________________
echo.
echo ╔══════════════════════════════════╗
echo ║ 按O覆蓋,按A追加,按V查看保存目錄,按 1 返回上一步,按 0 退出 ║
echo ╚══════════════════════════════════╝
echo.
echo.
set choice=
set /p choice= 請選擇(O/A/V/0/1):
if /i "%choice%"=="o" cls && goto over_write
if /i "%choice%"=="a" goto input_date
if /i "%choice%"=="v" call :view_directory && goto whether_over
if "%choice%"=="0" exit
if "%choice%"=="1" goto input_destination
goto whether_over
:whether_add
cls
color 0c
title 文件備份器-路徑已存在
echo.
echo.
echo.
echo.
echo.
echo ________________________________________________________________________________
echo.
echo "%destination%"下似乎已經存在以前的備份,覆蓋還是追加?
echo.
echo ________________________________________________________________________________
echo.
echo ╔═══════════════════════════════════╗
echo ║ 按 V 查看保存目錄,按 O 覆蓋,按 A 追加,按 1 返回上一步,按 0 退出 ║
echo ╚═══════════════════════════════════╝
echo.
echo.
set choice=
set /p choice= 請選擇(V/O/A/0/1):
if /i "%choice%"=="o" goto over_write
if /i "%choice%"=="a" cls && goto input_date
if /i "%choice%"=="v" call :view_directory && goto whether_add
if "%choice%"=="0" exit
if "%choice%"=="1" goto input_destination
goto whether_add
:freesize
:: 假設字符串freesize長度范圍為0~7(假設硬盤最大999G,換算成以M為單位則是7位數),
:: 則首先在freesize前補足7個空格,然后直接取字符串的后7個字符,即可得到右對齊排列
:: 的數字freesize。同理,假設字符串volume的長度范圍為0~20(卷標名最長可達32位,但是
:: 為了兼顧排版的顯示,只取后20位)。
cls
color 2e
title 文件備份器-各分區(qū)剩余空間情況
setlocal EnableDelayedExpansion
echo.
echo.
echo ╔══════════════════════════════╗
echo ║ 磁盤分區(qū) 磁盤卷標名 剩余空間(MB) ║
echo ║ _____________________________________________________ ║
for %%d in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
if exist %%d:\nul (
for /f "tokens=3" %%z in ('dir /-c %%d:\') do set freesize=%%z
if not "!freesize!"=="0" (
&
警告:運行BAT源碼是一種危險的動作,如果你不熟悉,請不要嘗試!
下載地址
人氣BAT
相關文章
-
CodeToos vbs實現的文件編碼查詢工具
vbs編寫的文件編碼查詢工具,直接將要檢測的文本文件拖動到這個CheckCode.vbs上就可以直接輸出編碼類型,需要的朋友可以下載收藏...
-
JREPL.BAT JScript實現的批處理正則表達式庫 JREPL
JREPL.BAT is a powerful, general purpose, command line, regular expression text processor for ASCII data. It is a hybrid JScript/batch script that should run on...
-
分秒必爭簡單個人DOS批處理工具
一個不錯的個人dos批處理工具,里面包括系統、網絡、安全等相關設置,對于想深入學習批處理的朋友可以參考一下...
-
純批處理腳本備份、還原驅動增強版(bat+vbs) 2014-01-18
用bat+vbs實現驅動備份、還原的工具,喜歡學習bat與vbs的朋友可以參考下...
-
護衛(wèi)神 MySQL密碼修改工具bat版 v1.1
有時候我們忘記了mysql密碼,我每次都會到腳本之家看下文章,雖然方法不錯,但不夠方便,這里特為大家準備了這個bat版的,安全放心...
-
第三方工具CIdo使用介紹(命令行窗口工具)
今天努力了好一會,終于完成了這個星期的第三個工具——CIdo,算是極其無敵的工具了。。。幾乎所有關于窗口的東西都可以用這個操作...
下載聲明
☉ 解壓密碼:chabaoo.cn 就是本站主域名,希望大家看清楚,[ 分享碼的獲取方法 ]可以參考這篇文章
☉ 推薦使用 [ 迅雷 ] 下載,使用 [ WinRAR v5 ] 以上版本解壓本站軟件。
☉ 如果這個軟件總是不能下載的請在評論中留言,我們會盡快修復,謝謝!
☉ 下載本站資源,如果服務器暫不能下載請過一段時間重試!或者多試試幾個下載地址
☉ 如果遇到什么問題,請評論留言,我們定會解決問題,謝謝大家支持!
☉ 本站提供的一些商業(yè)軟件是供學習研究之用,如用于商業(yè)用途,請購買正版。
☉ 本站提供的文件備份器V2.3修改版 批處理文件 文件備份器bat資源來源互聯網,版權歸該下載資源的合法擁有者所有。