以下文章為轉(zhuǎn)貼,原文章出處:http://boyhong.blog.51cto.com/367889/385092
本簡(jiǎn)易GUI版的幾個(gè)使用技巧:
1.GUI界面空白處帶一個(gè)右鍵菜單藕赞,有幾個(gè)小功能供您選用,也可直接按F1呼出本記事本說(shuō)明文件历筝。
2.點(diǎn)擊界面上的“源目錄”,“目的地”文字可打開后邊的目錄(若后邊對(duì)應(yīng)目錄實(shí)際存在的話砸彬。)
---本著操作簡(jiǎn)單的目的,才了本Robocopy的簡(jiǎn)易GUI版。
更新說(shuō)明:
2018.7.20 a,在右鍵菜單里新增了拷貝完成后關(guān)機(jī)的功能;b,不再依靠ESC來(lái)中止拷貝而是通過(guò)下邊那個(gè)按鈕;c,本版下邊的進(jìn)度條是真實(shí)拷貝進(jìn)度了;d,多開完美支持了.
********************************************************************************************************************
以下是Robocopy cmdline版的前世今生:
Robocopy.exe 是 微軟在Windows server 2003 Resource Kit Tools 里面提供的程序,其用來(lái)做備份的.vista,win7已經(jīng)自帶了挑庶。
Windows系統(tǒng)中內(nèi)置的傳統(tǒng)的“復(fù)制和粘貼”功能有一些局限性。它在執(zhí)行簡(jiǎn)單的任務(wù)(將一個(gè)文檔從一個(gè)目錄移動(dòng)到另一個(gè)目錄等)時(shí)處理得還好软能,但缺乏專業(yè)人員在工作場(chǎng)所所需的高級(jí)功能迎捺。例如,復(fù)制和粘貼操作不包括任何高級(jí)復(fù)原功能查排,所以不允許從短暫的網(wǎng)絡(luò)中斷后進(jìn)行恢復(fù)凳枝。特別是當(dāng)復(fù)制完整的目錄時(shí),用時(shí)很長(zhǎng),并且是全新拷貝和拷貝過(guò)程中不能中斷岖瑰!否則前功盡棄叛买。
Robocopy。這個(gè)強(qiáng)大的工具包含在 Microsoft Windows Server? 2003 Resource Kit Tools 中蹋订,其有了上述所有高級(jí)功能以及更多功能率挣。Robocopy 支持更多重要的文件復(fù)制任務(wù),從而能夠真正簡(jiǎn)化您的工作露戒。我想您將發(fā)現(xiàn)最大的好處是椒功,可以創(chuàng)建兩個(gè)文件結(jié)構(gòu)(可以根據(jù)您的選擇包括所有子文件夾和文件)的完全的鏡像副本而不復(fù)制任何不需要的文件。只復(fù)制源位置中的新文件或更新后的文件智什。Robocopy 還允許您保留所有相關(guān)文件信息动漾,包括日期和時(shí)間戳、安全訪問(wèn)控制列表 (ACL) 及更多內(nèi)容荠锭。
----------------【參數(shù)解釋】-------------------
-------------------------------------------------------------------------------
? ROBOCOPY? ? ::? ? Windows 的可靠文件復(fù)制? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
-------------------------------------------------------------------------------
? 啟動(dòng)時(shí)間: Fri May 08 17:10:13 2009
? ? ? ? ? ? ? Usage :: ROBOCOPY source destination [file [file]...] [options]
? ? ? ? ? ? ? ? ? 源:: 源目錄(驅(qū)動(dòng)器:\路徑或\\服務(wù)器\共享\路徑)旱眯。
? ? ? ? ? ? ? ? 目錄:: 目標(biāo)目錄(驅(qū)動(dòng)器:\路徑或\\服務(wù)器\共享\路徑)。
? ? ? ? ? ? ? ? 文件:: 要復(fù)制的文件(名稱/通配符: 默認(rèn)為 "*.*" 证九。
::
:: 復(fù)制選項(xiàng):
::
? ? ? ? ? ? ? ? /S :: 復(fù)制子目錄删豺,但不復(fù)制空的子目錄。
? ? ? ? ? ? ? ? /E :: 復(fù)制子目錄甫贯,包括空的子目錄吼鳞。
? ? ? ? ? ? /LEV:n :: 僅復(fù)制源目錄樹的前 n 層。
? ? ? ? ? ? ? ? /Z :: 在可重新啟動(dòng)模式下復(fù)制文件叫搁。
? ? ? ? ? ? ? ? /B :: 在備份模式下復(fù)制文件赔桌。
? ? ? ? ? ? ? ? /ZB :: 使用可重新啟動(dòng)模式;如果拒絕訪問(wèn)渴逻,請(qǐng)使用備份模式疾党。
? ? ? ? ? ? /EFSRAW :: 在 EFS RAW 模式下復(fù)制所有加密的文件。
? ? ? /COPY:復(fù)制標(biāo)記:: 要復(fù)制的文件內(nèi)容(默認(rèn)為 /COPY AT)惨奕。
? ? ? ? ? ? ? ? ? ? ? (復(fù)制標(biāo)記: D=數(shù)據(jù)雪位,A=屬性,T=時(shí)間戳)梨撞。
? ? ? ? ? ? ? ? ? ? ? (S=安全=NTFS ACL雹洗,O=所有者信息,U=審核信息)卧波。
? ? ? ? ? /DCOPY:T :: 復(fù)制目錄時(shí)間戳时肿。
? ? ? ? ? ? ? /SEC :: 復(fù)制具有安全性的文件(等同于 /COPY ATS)。
? ? ? ? ? /COPYALL :: 復(fù)制所有文件信息(等同于 /COPY ATSOU)港粱。
? ? ? ? ? ? /NOCOPY :: 不復(fù)制任何文件信息(與 /PURGE 一起使用生效)螃成。
? ? ? ? ? ? /SECFIX :: 修復(fù)所有文件的文件安全性旦签,即使是跳過(guò)的文件。
? ? ? ? ? ? /TIMFIX :: 修復(fù)所有文件的文件時(shí)間寸宏,即使是跳過(guò)的文件宁炫。
? ? ? ? ? ? /PURGE :: 刪除源中不再存在的目標(biāo)文件/目錄。
? ? ? ? ? ? ? /MIR :: 鏡像目錄樹(等同于 /E 和 /PURGE)氮凝。
? ? ? ? ? ? ? /MOV :: 移動(dòng)文件(復(fù)制后從源中刪除)羔巢。
? ? ? ? ? ? ? /MOVE :: 移動(dòng)文件和目錄(復(fù)制后從源中刪除)。
? ? /A+:[RASHCNET] :: 將給定的屬性添加到復(fù)制文件罩阵。
? ? /A-:[RASHCNET] :: 從復(fù)制文件中刪除給定的屬性朵纷。
? ? ? ? ? ? /CREATE :: 僅創(chuàng)建目錄樹和長(zhǎng)度為零的文件。
? ? ? ? ? ? ? /FAT :: 僅使用 8.3 FAT 文件名創(chuàng)建目標(biāo)文件永脓。
? ? ? ? ? ? ? /256 :: 關(guān)閉超長(zhǎng)路徑(> 256 字符)支持。
? ? ? ? ? ? /MON:n :: 監(jiān)視源鞋仍;發(fā)現(xiàn)多于 n 個(gè)更改時(shí)再次運(yùn)行常摧。
? ? ? ? ? ? /MOT:m :: 監(jiān)視源;如果更改威创,在 m 分鐘時(shí)間內(nèi)再次運(yùn)行落午。
? ? ? /RH:hhmm-hhmm :: 運(yùn)行小時(shí)數(shù) - 可以啟動(dòng)新副本的時(shí)間。
? ? ? ? ? ? ? ? /PF :: 以每個(gè)文件(而不是每個(gè)步驟)為基礎(chǔ)檢查運(yùn)行小時(shí)數(shù)肚豺。
? ? ? ? ? ? /IPG:n :: 程序包間的間距(ms)溃斋,以釋放低速線路上的帶寬。
? ? ? ? ? ? ? ? /SL:: 對(duì)照目標(biāo)復(fù)制符號(hào)鏈接吸申。
::
:: 文件選擇選項(xiàng):
::
? ? ? ? ? ? ? ? /A :: 僅復(fù)制具有存檔屬性集的文件梗劫。
? ? ? ? ? ? ? ? /M :: 僅復(fù)制具有存檔屬性的文件并重置存檔屬性。
? ? /IA:[RASHCNETO] :: 僅包含具有任意給定屬性集的文件截碴。
? ? /XA:[RASHCNETO] :: 排除具有任意給定屬性集的文件梳侨。
? /XF 文件[文件]... :: 排除與給定名稱/路徑/通配符匹配的文件。
? /XD 目錄[目錄](méi)... :: 排除與給定名稱/路徑匹配的目錄日丹。
? ? ? ? ? ? ? ? /XC :: 排除已更改的文件走哺。
? ? ? ? ? ? ? ? /XN :: 排除較新的文件。
? ? ? ? ? ? ? ? /XO :: 排除較舊的文件哲虾。
? ? ? ? ? ? ? ? /XX :: 排除多余的文件和目錄丙躏。
? ? ? ? ? ? ? ? /XL :: 排除孤立的文件和目錄。
? ? ? ? ? ? ? ? /IS :: 包含相同文件束凑。
? ? ? ? ? ? ? ? /IT :: 包含已調(diào)整的文件晒旅。
? ? ? ? ? ? /MAX:n :: 最大的文件大小 - 排除大于 n 字節(jié)的文件。
? ? ? ? ? ? /MIN:n :: 最小的文件大小 - 排除小于 n 字節(jié)的文件湘今。
? ? ? ? ? /MAXAGE:n :: 最長(zhǎng)的文件存在時(shí)間 - 排除早于 n 天/日期的文件敢朱。
? ? ? ? ? /MINAGE:n :: 最短的文件存在時(shí)間 - 排除晚于 n 天/日期的文件。
? ? ? ? ? /MAXLAD:n :: 最大的最后訪問(wèn)日期 - 排除自 n 以來(lái)未使用的文件。
? ? ? ? ? /MINLAD:n :: 最小的最后訪問(wèn)日期 - 排除自 n 以來(lái)使用的文件拴签。
? ? ? ? ? ? ? ? ? ? ? (If n < 1900 then n = n days, else n = YYYYMMDD date)孝常。
? ? ? ? ? ? ? ? /XJ :: 排除接合點(diǎn)。(默認(rèn)情況下通常包括)蚓哩。
? ? ? ? ? ? ? /FFT :: 假設(shè) FAT 文件時(shí)間(2 秒粒度)构灸。
? ? ? ? ? ? ? /DST :: 彌補(bǔ) 1 小時(shí)的 DST 時(shí)間差。
? ? ? ? ? ? ? /XJD :: 排除目錄的接合點(diǎn)岸梨。
? ? ? ? ? ? ? /XJF :: 排除文件的接合點(diǎn)喜颁。
::
:: 重試選項(xiàng):
::
? ? ? ? ? ? ? /R:n :: 失敗副本的重試次數(shù): 默認(rèn)為 1 百萬(wàn)。
? ? ? ? ? ? ? /W:n :: 兩次重試間的等待時(shí)間: 默認(rèn)為 30 秒曹阔。
? ? ? ? ? ? ? /REG :: 將注冊(cè)表中的 /R:n 和 /W:n 保存為默認(rèn)設(shè)置半开。
? ? ? ? ? ? ? /TBD :: 等待定義共享名稱(重試錯(cuò)誤 67)。
::
:: 日志記錄選項(xiàng):
::
? ? ? ? ? ? ? ? /L :: 僅列出 - 不復(fù)制赃份、添加時(shí)間戳或刪除任何文件寂拆。
? ? ? ? ? ? ? ? /X :: 報(bào)告所有多余的文件,而不只是選中的文件抓韩。
? ? ? ? ? ? ? ? /V :: 生成詳細(xì)輸出纠永,同時(shí)顯示跳過(guò)的文件。
? ? ? ? ? ? ? ? /TS :: 在輸出中包含源文件的時(shí)間戳谒拴。
? ? ? ? ? ? ? ? /FP :: 在輸出中包含文件的完整路徑名稱尝江。
? ? ? ? ? ? /BYTES :: 以字節(jié)打印大小。
? ? ? ? ? ? ? ? /NS :: 無(wú)大小 - 不記錄文件大小英上。
? ? ? ? ? ? ? ? /NC :: 無(wú)類別 - 不記錄文件類別炭序。
? ? ? ? ? ? ? /NFL :: 無(wú)文件列表 - 不記錄文件名。
? ? ? ? ? ? ? /NDL :: 無(wú)目錄列表 - 不記錄目錄名稱苍日。
? ? ? ? ? ? ? ? /NP :: 無(wú)進(jìn)度 - 不顯示已復(fù)制的百分比少态。
? ? ? ? ? ? ? /ETA :: 顯示復(fù)制文件的預(yù)期到達(dá)時(shí)間。
? ? ? ? ? /LOG:文件:: 將狀態(tài)輸出到日志文件(覆蓋現(xiàn)有日志)易遣。
? ? ? ? ? /LOG+:文件:: 將狀態(tài)輸出到日志文件(附加到現(xiàn)有日志中)彼妻。
? ? ? ? /UNILOG:文件:: 以 UNICODE 方式將狀態(tài)輸出到日志文件(覆蓋現(xiàn)有日志)。
? ? ? /UNILOG+:文件:: 以 UNICODE 方式將狀態(tài)輸出到日志文件(附加到現(xiàn)有日志中)豆茫。
? ? ? ? ? ? ? /TEE :: 輸出到控制臺(tái)窗口和日志文件侨歉。
? ? ? ? ? ? ? /NJH :: 沒(méi)有作業(yè)標(biāo)頭。
? ? ? ? ? ? ? /NJS :: 沒(méi)有作業(yè)摘要揩魂。
? ? ? ? ? /UNICODE :: 以 UNICODE 方式輸出狀態(tài)幽邓。
::
:: 作業(yè)選項(xiàng) :
::
? ? ? /JOB:作業(yè)名稱:: 從命名的作業(yè)文件中提取參數(shù)。
? ? ? /SAVE:作業(yè)名稱:: 將參數(shù)保存到命名的作業(yè)文件
? ? ? ? ? ? ? /QUIT :: 處理命令行后退出(以查看參數(shù))火脉。
? ? ? ? ? ? ? /NOSD :: 未指定源目錄牵舵。
? ? ? ? ? ? ? /NODD :: 未指定目標(biāo)目錄柒啤。
? ? ? ? ? ? ? ? /IF :: 包含以下文件。
車?yán)餇F 轉(zhuǎn)帖+整理
----------------【例子】-------------------
實(shí)例一:文件畸颅,想怎么復(fù)制就怎么復(fù)制
[實(shí)現(xiàn)效果]
隨時(shí)將源文件夾中的純文本(TXT)担巩、Word文檔(DOC)還有BMP、TIF圖像文件復(fù)制到目標(biāo)文件夾中没炒,這是在“資源管理器”中直接拖放所做不到的涛癌。[簡(jiǎn)單命令]
robocopy d:\work e:\back *.txt *.doc *.bmp *.tif /s
[參數(shù)講解]
將d:\work文件下的TXT、DOC送火、BMP拳话、TIF復(fù)制到e:\back文件夾,其他文件則不復(fù)制种吸。/s是表示包括除空文件下的所有子目錄弃衍,如果沒(méi)有則僅復(fù)制d:\work下的文件而不包括子目錄。
[舉一反三]
〖崴住(1)如果要將文件夾下的所有文件包括空文件夾全部復(fù)制到目標(biāo)文件夾笨鸡,命令為:robocopy d:\work e:\back /e
/e表示復(fù)制所有子目錄包括空文件夾。
√构凇(2)如果只想復(fù)制兩個(gè)層級(jí)內(nèi)的文件(再下的層級(jí)里的文件則不拷貝),輸入命令:robocopy d:\work e:\back /e /lev:2
/lev:2表示復(fù)制的層級(jí)哥桥,比如指定層級(jí)后d:\work\soft(二級(jí))下的文件會(huì)被復(fù)制辙浑,而d:\work\soft\office(三級(jí))下的文件則不被復(fù)制
。
實(shí)例二:垃圾文件不復(fù)制
[實(shí)現(xiàn)效果]在備份數(shù)據(jù)時(shí)拟糕,不可避免會(huì)將類似于*.bak判呕、*.tmp的垃圾文件也復(fù)制到目標(biāo)文件夾,用Robocopy可以將我們經(jīng)常碰到的垃圾文
件在拷貝時(shí)就清理出家門送滞,從而生成一個(gè)干干凈凈的文件夾侠草。
[簡(jiǎn)單命令]
robocopy d:\work e:\back /e /xf *.tmp *.bak
[參數(shù)講解]
/xf為指定不執(zhí)行復(fù)制操作的文件類型,后面的文件名支持通配符犁嗅。如果參數(shù)為/xd边涕,則表示排除后面指定的文件夾。
實(shí)例三:大文件 我不要
[實(shí)現(xiàn)效果]
復(fù)制的時(shí)候褂微,為了節(jié)省時(shí)間功蜓,需要將一些大文件暫時(shí)不拷貝,等有空閑時(shí)間時(shí)宠蚂,再執(zhí)行復(fù)制操作不遲式撼。
[簡(jiǎn)單命令]
robocopy d:\work e:\back /e /max:6000000
[參數(shù)講解]
僅復(fù)制不大于6000000bytes的文件,/max:后直接接數(shù)值求厕,數(shù)值單位為byte著隆。如果是/min:1000扰楼,則復(fù)制不小于1000bytes的文件美浦。兩個(gè)參數(shù)
可以同時(shí)使用,界定復(fù)制文件大小的范圍。
實(shí)例四:只要這一周修改的文件
[實(shí)現(xiàn)效果]
這一周處理了哪些文檔?編輯了那些文件?將這些修改了的文檔復(fù)制到一個(gè)文件夾下,再好好回味一下惭载。本例就是要將d:\work中最近七天
內(nèi)新建或修改了的TXT旱函、DOC、XLS描滔、PPT等文檔棒妨,復(fù)制到e:\look目錄下。
[簡(jiǎn)單命令]
robocopy d:\work e:\look /s *.txt *.doc *.xls *.ppt /maxage:7
[參數(shù)講解]
/maxage:表示最遠(yuǎn)修改時(shí)間的含长,修改時(shí)間比這個(gè)還要舊的文件將不會(huì)被復(fù)制券腔。/maxage:后可接數(shù)字,也可以接日期拘泞,數(shù)字小于1900時(shí)表示
天數(shù)纷纫,否則就得用YYYYMMDD來(lái)表示具體的日期
如/maxage:20040210表示2004年2月10日后被修改的文件才允許復(fù)制。與之相對(duì)應(yīng)的參數(shù)是/minage陪腌,表示最近修改時(shí)間辱魁,比這個(gè)時(shí)間新
的文件將不被復(fù)制。
[舉一反三]
robocopy d:\work e:\look /s *.txt *.doc *.xls *.ppt /maxage:7 /minage:1
則表示近七天內(nèi)除今天外修改的文件才允許被復(fù)制诗鸭。
與修改時(shí)間相對(duì)的還有最近訪問(wèn)時(shí)間商叹,/maxage指最遠(yuǎn)訪問(wèn)時(shí)間,比這個(gè)時(shí)間老的文件將不被復(fù)制只泼。/minage是指最近訪問(wèn)時(shí)間剖笙,比這個(gè)時(shí)
間新的文件將不被復(fù)制。
實(shí)例五:我的文檔排排站
[實(shí)現(xiàn)效果]
上例中復(fù)制時(shí)请唱,所有的文檔都會(huì)帶來(lái)本身的路徑信息弥咪,文檔是會(huì)將其所存放的文件夾也復(fù)制過(guò)來(lái)过蹂。這給我們的翻閱查看帶來(lái)很多不便,得
單擊多層文件夾才能看到文件聚至,能不能將所有的文檔直接復(fù)制到一個(gè)文件夾下呢酷勺?這個(gè)需要用XXCOPY來(lái)實(shí)現(xiàn)。
? ? [簡(jiǎn)單命令]
xxcopy d:\work e:\look /s /in*.txt /in*.doc /sg /yy /da:2004-02-02 /DB:2004-02-10/DA:1997-01-01
[參數(shù)講解]
此命令將d:\work中從2004年2月2日到2月10生成的 TXT扳躬、DOC文件全部直接復(fù)制到e:\look目錄下脆诉,不新建子文件夾,打開e:\look就能看到
所有文件贷币。XXCOPY和Robocopy的語(yǔ)法參數(shù)還是有較大差異的击胜,表示指定文件類型時(shí),XXCOPY會(huì)用/in*.*役纹,表示日期時(shí)/da為在指定時(shí)間后偶摔,/db
為在指定時(shí)間前,日期的表示為YYYY- MM-DD促脉。
另外辰斋,/sg表示復(fù)制文件到同一文件夾,/yy表示在所有要求用戶應(yīng)答的地方都自動(dòng)認(rèn)為是Yes瘸味,在執(zhí)行過(guò)程中不需要用戶干預(yù)宫仗。
實(shí)例六:完全克隆
[實(shí)現(xiàn)效果]
我們一般采取的復(fù)制方式默認(rèn)是增量復(fù)制,即根據(jù)文件的大小旁仿、修改時(shí)間將源文件夾里的內(nèi)容向目標(biāo)文件夾復(fù)制藕夫,久而久之,目標(biāo)文件夾
里就可能存在大量源件夾里早已經(jīng)刪除且無(wú)用的文件和文件夾丁逝。如果要讓備份完全相同,即拷貝時(shí)刪除在目標(biāo)文件夾里存在但源文件夾里并沒(méi)
有的文件梭姓。
[簡(jiǎn)單命令]
robcopy d:\work e:\look /mir
[參數(shù)講解]
/mir的作用等同于/purge /e霜幼,/purge表示清理目標(biāo)文件夾有而源文件夾里沒(méi)有的文件(夾)。通過(guò)這個(gè)命令誉尖,能保證源文件夾和目標(biāo)文件
夾結(jié)構(gòu)與文件完全相同罪既。這在創(chuàng)建鏡像備份時(shí),非常有用铡恕。
實(shí)例七:移動(dòng)文件
[實(shí)現(xiàn)效果]
我們前面講的都是復(fù)制琢感,如果我們要將文件夾移動(dòng)到目標(biāo)文件夾,如何操作呢探熔?
[簡(jiǎn)單命令]
robocopy d:\work e:\look /move /e
[參數(shù)講解]
其中驹针,/move表示移動(dòng)。
實(shí)例八:我只要文件夾骨架
[實(shí)現(xiàn)效果]
筆者的工作需要周期性地新建和整理大量的文件夾诀艰,每次的文件夾結(jié)構(gòu)一樣柬甥,只是文件不盡相同饮六。如果是以前,就得一個(gè)一個(gè)簡(jiǎn)單重復(fù)去
制作苛蒲,而現(xiàn)在就不需要了卤橄。Robocopy和XXCOPY可以讓你輕松實(shí)現(xiàn)復(fù)制文件夾結(jié)構(gòu)。
[簡(jiǎn)單命令]
xxcopy d:\work e:\mystruct /t /yy /dl3
[參數(shù)講解]
將d:\work的三層文件夾結(jié)構(gòu)復(fù)制到e:\mystruct中臂外。其中/t表示創(chuàng)建文件夾結(jié)構(gòu)窟扑,/dl3表示復(fù)制的文件夾結(jié)構(gòu)為三級(jí),數(shù)字可以自行輸入
漏健,如果沒(méi)有此參數(shù)嚎货,默認(rèn)建立整個(gè)文件夾結(jié)構(gòu)。
Robocopy創(chuàng)建文件夾相對(duì)要麻煩一些漾肮,/create參數(shù)不僅要?jiǎng)?chuàng)建結(jié)構(gòu)厂抖,還要?jiǎng)?chuàng)建文件夾下所有文件的0字節(jié)文件,并非真正的結(jié)構(gòu)克懊,我們只
好劍走偏鋒了忱辅。
robocopy d:\work e:\mystruct /e /lev:3 /minage:19000101
為Robocopy指定一個(gè)不可能創(chuàng)建文件的時(shí)間,因?yàn)橛袇?shù)/e 的作用谭溉,雖然沒(méi)有文件符合要求(你機(jī)器里沒(méi)有早于1900年1月1日的文件)墙懂,
但Robocopy還是會(huì)忠實(shí)地創(chuàng)建文件夾,這樣就達(dá)到了生成文件夾結(jié)構(gòu)的目的扮念。另外损搬,/lev:3表示復(fù)制文件夾的層級(jí),同樣可以自行輸入柜与。
實(shí)例九:隱藏文件我不要
[實(shí)現(xiàn)效果]
在默認(rèn)狀態(tài)下巧勤,隱藏文件是并不顯示的,但在復(fù)制的過(guò)程中弄匕,它還會(huì)隨著文件夾一起被復(fù)制颅悉。可不可以將這些隱藏文件排除在復(fù)制范圍之
外呢迁匠?
[簡(jiǎn)單命令]
robocopy d:\work e:\back /e /xa:h
[參數(shù)講解]
Robocopy支持對(duì)屬性進(jìn)行操作剩瓶。上面的命令將復(fù)制源文件夾中全部文件,但全部具有隱藏屬性的文件將不會(huì)被復(fù)制城丧。/xa:h延曙,表示將具有隱
藏屬性的排除出復(fù)制范圍,與之相對(duì)應(yīng)的是/ia亡哄,表示包括只對(duì)擁有指定屬性的執(zhí)行操作枝缔。屬性有R:只讀,A:存檔蚊惯,S:系統(tǒng)魂仍,H:隱藏等幾種
供選擇拐辽。
[舉一反三]
(1)此外擦酌,Robocopy還有/a+俱诸、/a-等參數(shù)對(duì)文件屬性進(jìn)行操作,分別表示在文件被拷貝后為文件添加赊舶、去除某屬性睁搭。
robocopy d:\work e:\back /ia:rs
表示只復(fù)制具有只讀和系統(tǒng)屬性的文件。
×健(2)robocopy c: d: /-a:rsh
表示將文件拷貝到D盤后园骆,將拷貝生成的文件的只讀、系統(tǒng)寓调、隱藏屬性去掉锌唾,以方便查看和修改。
實(shí)例十:NTFS權(quán)限跟著走
[實(shí)現(xiàn)效果]
在使用Windows 2000夺英、Windows XP時(shí)晌涕,在多用戶使用一臺(tái)電腦時(shí)或管理服務(wù)器時(shí),經(jīng)常要為文件夾指定用戶訪問(wèn)和修改的權(quán)限(如圖1痛悯,需
要分區(qū)為NTFS)余黎。不過(guò),用一般的復(fù)制方式無(wú)法保留我們?cè)O(shè)置的權(quán)限载萌,這在服務(wù)器備份時(shí)意味著我們得重新設(shè)置用戶權(quán)限惧财。不過(guò),Robocopy可
以讓我們?cè)趶?fù)制文件的時(shí)候扭仁,將屬性垮衷、用戶權(quán)限、所有者都可以一并復(fù)制到目標(biāo)文件夾中乖坠。
備份雙友鄰精彩5例-Robocopy和xxcopy全掌握
[簡(jiǎn)單命令]
robocopy d:\work e:\back /e /copyall
[參數(shù)講解]
/copyall等于/copy:datsou搀突,表示將所有源文件夾的信息復(fù)制到目標(biāo)文件夾中,其中D:文件數(shù)據(jù)瓤帚,A:文件屬性描姚,T:時(shí)間信息涩赢,S:權(quán)限
信息戈次,O:所有者信息,U:審核信息筒扒。
[舉一反三]
如果源文件夾的權(quán)限被修改怯邪,需要同樣更新目標(biāo)文件夾的權(quán)限時(shí),我們不必再重復(fù)復(fù)制花墩,只需輸入
robocopy d:\work e:\back /is /copy:sou
如果沒(méi)有/copy參數(shù)悬秉,默認(rèn)為/copy:dat澄步,沒(méi)有后面三項(xiàng)的信息。
實(shí)例十一:集中備份到文件服務(wù)器
[實(shí)現(xiàn)效果]
希望每天能夠把相應(yīng)數(shù)據(jù)備份到文件服務(wù)器上和泌,以免數(shù)據(jù)丟失村缸。
[簡(jiǎn)單命令]
robocopy d:\work \ctips_serverarticlesshare? /e /copyall
[參數(shù)講解]
從中可以看出,robocopy完全支持文件服務(wù)器共享文件夾數(shù)據(jù)的拷貝武氓。
[舉一反三]
√菝蟆(1)如果我們創(chuàng)建了一個(gè)環(huán)境變量,如定義%databack%為\ctips_serverarticles\back县恕,那只要輸入相應(yīng)的命令:robocopy d:\work? %
databack% /e /copyall 即可把d:\work下的文件全部備份到\ctips_serverarticles\back下东羹。當(dāng)然,如果\ctips_serverarticles\back空間不
夠時(shí)忠烛,只要更換環(huán)境變量的值到其他文件夾属提,如\ctips_serverarticles ewback,上述命令無(wú)需更改就可以反數(shù)據(jù)拷貝到新的文件夾中美尸。
≡┮椤(2)如果你只想把數(shù)據(jù)備份到共享文件夾中以你的機(jī)器名為名字的共享文件夾中,使用xxcopy會(huì)更方便:xxcopy d:\work?
\ctips_serverarticles/$HOST$ /e /yy 其中/$HOST$表示你的機(jī)器名火惊,如你的機(jī)器名為CTIPS_SYJ求类,那會(huì)把d:\work 文件夾下的文件拷貝到
\ctips_serverarticles\CTIPS_SYJ文件夾下。如果你的機(jī)器名為CTIPS_MLB屹耐,那執(zhí)行上述命令后就可以把d:\work 文件夾下的文件拷貝到
\ctips_serverarticles\CTIPS_MLB文件夾下尸疆。由于同局域網(wǎng)內(nèi)的機(jī)器名字不會(huì)相同,執(zhí)行上述命令后就可以保證數(shù)據(jù)不會(huì)被拷貝到同一文件夾
下惶岭。
實(shí)例十二:一動(dòng)就備份
[實(shí)現(xiàn)效果]
有些工作內(nèi)容非常重要寿弱,需要時(shí)時(shí)刻刻注意備份,可是我們哪里有這么好記性和耐性呢按灶?這事症革,還是交給 Robocopy來(lái)做吧。Robocopy能時(shí)
時(shí)監(jiān)視要備份的文件夾鸯旁,只要文件夾修改到一定時(shí)間和程序噪矛,Robocopy就會(huì)立即開始備份。它會(huì)一直監(jiān)視文件夾铺罢,除非用戶自己終止艇挨。
[簡(jiǎn)單命令]
robocopy d:\work e:\back? /e /copyall /mot:1 /mon:2
[參數(shù)講解]
上述命令表示復(fù)制文件夾所有信息到目標(biāo)文件夾并進(jìn)行監(jiān)視。執(zhí)行此命令后韭赘,命令提示符窗口如圖2所示缩滨。一旦時(shí)間過(guò)了一分鐘,并且源文
件夾至少有或2處以上的修改,Robocopy就會(huì)自動(dòng)啟動(dòng)另一個(gè)進(jìn)程脉漏,執(zhí)行上述備份操作苞冯。Robocopy能監(jiān)視源文件夾結(jié)構(gòu)、文件和文件夾名稱侧巨、大
小舅锄、最后修改時(shí)間,在這里司忱,甚至連屬性和權(quán)限等信息被修改時(shí)巧娱,Robocopy也會(huì)記為修改次數(shù)。
備份雙友鄰精彩5例-Robocopy和xxcopy全掌握
/mot后接的是時(shí)間(分鐘)烘贴,是指Robocopy執(zhí)行操作的最短時(shí)間禁添;/mon后接的是最少文件修改個(gè)數(shù)。在監(jiān)視過(guò)程中桨踪,會(huì)自動(dòng)記錄時(shí)間和修
改的次數(shù)老翘,只有同時(shí)符合以上兩個(gè)條件時(shí),Robocopy才開始執(zhí)行锻离,執(zhí)行完成后铺峭,這兩個(gè)數(shù)據(jù)會(huì)自動(dòng)清零,并重新開始監(jiān)視文件夾汽纠,除非用戶關(guān)
閉命令提示符窗口或按下Ctrl+Break鍵卫键。
[舉一反三]
如果你要開機(jī)就監(jiān)視并備份相應(yīng)文件夾,則可以把上述命令放到“啟動(dòng)”組中虱朵。
實(shí)例十三:不到時(shí)間不備份
[實(shí)現(xiàn)效果]
復(fù)制的過(guò)程總會(huì)占用系統(tǒng)資源莉炉,如果能設(shè)置在自己不在電腦邊上的時(shí)候開始復(fù)制備份,就會(huì)方便得多碴犬。比如絮宁,每天5:50下班,希望下班后
服协,到達(dá)6點(diǎn)時(shí)绍昂,Robocopy自動(dòng)開始備份相應(yīng)數(shù)據(jù)。
[簡(jiǎn)單命令]
robocopy d:\work e:\back /e /rh:1800-1830
[舉一反三]
運(yùn)行后偿荷,復(fù)制操作將會(huì)等待至指定時(shí)間開始(如圖3)窘游。其中,RH格式為/RH:hhmm-hhmm跳纳,指定Robocopy開始的時(shí)間段忍饰,在這個(gè)時(shí)間段外,
拷貝會(huì)被暫停棒旗。時(shí)間為24小時(shí)格式喘批,4個(gè)數(shù)字長(zhǎng),從0000到2359铣揉,而且兩個(gè)數(shù)字不能相同饶深。
備份雙友鄰精彩5例-Robocopy和xxcopy全掌握
實(shí)例十四:計(jì)劃任務(wù)備份
以上的到時(shí)間備份、監(jiān)視文件夾備份方式逛拱,每次重啟系統(tǒng)會(huì)都會(huì)要重新執(zhí)行以上命令敌厘,還遠(yuǎn)遠(yuǎn)不夠智能,如果能和Windows的計(jì)劃任務(wù)配合
朽合,所有問(wèn)題就迎刃而解了俱两。以我們要在每天10:00自動(dòng)調(diào)用Robocopy開始監(jiān)視備份文件夾為例,說(shuō)一說(shuō)計(jì)劃任務(wù)與Robocopy的攜手曹步。
第一步:新建BAT文件
新建一個(gè)批處理文件autobak.bat宪彩,輸入如下命令
robocopy d:\work e:\back? /e /copyall? /mot:1 /mon:2
第二步:創(chuàng)建計(jì)劃任務(wù)
選擇“開始→設(shè)置→控制面板”,雙擊“任務(wù)計(jì)劃”圖標(biāo)讲婚。把a(bǔ)utobak.bat批處理文件拖放到“任務(wù)計(jì)劃”窗口尿孔,然后雙擊新生成的
autobak.bat圖標(biāo),在彈出窗口中設(shè)置其屬性筹麸。
第三步:設(shè)置開始時(shí)間
切換到“日程安排”標(biāo)簽活合,單擊“任務(wù)計(jì)劃”下拉列表框,從中選擇“每天”物赶,“開始時(shí)間”設(shè)置為10:00白指,單擊“高級(jí)”可以設(shè)置起止的日期
(如圖4)。
通過(guò)上述設(shè)置后酵紫,到了設(shè)置的時(shí)間告嘲,機(jī)器就會(huì)自動(dòng)備份執(zhí)行批處理文件,自動(dòng)備份并監(jiān)視文件夾奖地。
備份雙友鄰精彩5例-Robocopy和xxcopy全掌握
實(shí)例十五:清理文件也拿手
除了一般的復(fù)制功能状蜗,XXCOPY還有文件清理功能,可以將不需要的文件快速清理出硬盤鹉动。以下命令會(huì)清除文件和文件夾轧坎,請(qǐng)先建立測(cè)試文
件夾掌握其操作后再對(duì)文件夾進(jìn)行操作。
1.清除所有無(wú)用文件
xxcopy? d:\work*.tmp /s /h /yy /rs
/rs表示不復(fù)制而直接從源文件夾中刪除指定文件泽示,/h表示指定隱藏和系統(tǒng)文件缸血。
2.清除文件夾
xxcopy? c: emp /rmdir /db:2002-01-01 /yy
刪除c: emp中在2002年1月1日前的修改的文件夾。
3.刪除空文件夾
xxcopy c: emp? /rmdir /sz:0 /yy
刪除c: emp下所有空文件夾械筛,/sz:0指定大小為0的文件(夾)捎泻。
4.刪除0字節(jié)文件
xxcopy c: emp*.*? /sz:0 /s /h /yy /rs
通過(guò)以上四種方式的組合,我們可以輕松實(shí)現(xiàn)對(duì)文件及文件夾的整理工作埋哟。
最后笆豁,還有一幾個(gè)小技巧告訴你郎汪,希望能有利于你更好地使用XXCOPY和Robocopy。
★將命令變成任務(wù)
在Robocopy加上“/save:任務(wù)名”可以將當(dāng)前操作記錄為任務(wù)文件闯狱,通過(guò)“/job:任務(wù)名”就可以方便調(diào)用煞赢,不需要再輸入一長(zhǎng)串的命令了。此任務(wù)文件可以用純文本編輯器(如記事本)來(lái)編輯哄孤。
★將復(fù)制備份過(guò)程錄下來(lái)
默認(rèn)情況下照筑,Robocopy的操作過(guò)程只是在命令提示符中顯示,我們可以讓它把操作過(guò)程輸出為TXT文件瘦陈,加上“/log:文件名.txt”即可凝危。
本人推薦批處理方式加入任務(wù)計(jì)劃
Robocopy命令實(shí)現(xiàn)文件服務(wù)器每日鏡像備份/增量備份操作
Robocopy是微軟推出的可靠文件復(fù)制服務(wù),經(jīng)過(guò)測(cè)試晨逝,比xcopy更加優(yōu)秀蛾默,特別是在復(fù)制ACL及文件時(shí)間戳方面。
免費(fèi)同步軟件通常在ACL同步這一塊比較薄弱捉貌,而付費(fèi)軟件復(fù)雜操作趴生,我們可以使用robocopy結(jié)合任務(wù)程序做到日常備份和增量備份。
Tips:
/dcopy:T 可以復(fù)制目錄時(shí)間戳昏翰。
如果未加則文件夾時(shí)間為復(fù)制發(fā)生的時(shí)間點(diǎn)苍匆。如果你希望時(shí)間戳和源目錄一直,可以再執(zhí)行一次命令棚菊,加/dcopy:T浸踩。
/log:日志
測(cè)試的時(shí)候運(yùn)行的話 加 /tee命令,這樣既能
/log+ 的話持續(xù)寫入同一個(gè)日志统求。
注:windows7 or windows2008R2中 /dcopy只支持 /dcopy:T
鏡像同步 Left >Right
robocopy "c:\abc" "D:\abc" /mir /copyall /dcopy:DAT /mt:8 /z /xa:sht /a-:h /np /ts /w:1 /r:1 /XD "System Volume Information" /XD $RECYCLE.BIN /a-:H /log:H:\Log\Robocopy\RBLog.txt /tee
效果是將c盤的abc文件夾(包括abc本身的一切屬性)检碗,同步到D盤ABC文件夾內(nèi)(D盤可以沒(méi)有abc文件夾,會(huì)自動(dòng)創(chuàng)建,如果已經(jīng)存在码邻,會(huì)覆蓋abc的ACL)折剃,包括abc內(nèi)一切文件&文件夾,包括所有的ACL和文件屬性像屋,包括所有的文件創(chuàng)建怕犁,訪問(wèn),修改時(shí)間屬性己莺。以8線程的速度運(yùn)行奏甫。斷點(diǎn)續(xù)傳。并創(chuàng)建時(shí)間日志凌受。
增量備份
近期備份修改過(guò)的文件
robocopy c:\abc d:\monday /mir /copyall /dcopy:DAT /w:1 /r:1 /maxage:1 /mt:8
效果是將C\abc 內(nèi)一天內(nèi)所有修改過(guò)的文件備份到Monday文件夾內(nèi)阵子。
加/z 支持?jǐn)帱c(diǎn)續(xù)傳
Robocopy命令實(shí)現(xiàn)文件服務(wù)器每日鏡像備份/增量備份操作
/xa:h只能排除隱藏文件,目前沒(méi)有針對(duì)隱藏目錄的命令胜蛉。只能用/XD 目錄名來(lái)排除隱藏目錄魄幕。
Robocopy命令實(shí)現(xiàn)文件服務(wù)器每日鏡像備份/增量備份操作
robocopy c:\ d:\aaa /e /XD “System Volume Information“” /XD $RECYCLE.BIN /a-:H
對(duì)于robocopy針對(duì)根目錄操作,需要去除System Volume Information和$RECYCLE.BIN這兩個(gè)目錄纱耻,用/XD參數(shù),/A-:H清除隱藏文件夾屬性.
@echo off
title Robocopy每日定期鏡像備份腳本
echo.
echo 防呆:請(qǐng)修改此腳本配置并刪除此行
pause >nul
:設(shè)置當(dāng)前日期名
set y=%date:~0,4%%date:~5,2%%date:~8,2%
:備份頻率 *
set pinlv=daily
:輸入備份時(shí)間 格式"22:00" *
set time=20:00
:存日志暖璧、BAT、郵件插件 *
set weizhi=E:\RCMB%y%
:源路徑 *
set yuan="D:\abc"
:目標(biāo)路徑 *
set mubiao="E:\abc"
:任務(wù)名字 *
set taskname=DailyMBCopy
:設(shè)置郵件
set from=abc@yeah.net
set user=abc
set pass=password
set to=12345@qq.com,678910@qq.com
set smtp=smtp.yeah.net
:郵件腳本形參
set a=%%y%%
set b=%%~dp0Log\Robocopy\RBLog%%y%%.txt
set c=%%~dp0Log\Blatmail\Maillog%%y%%.txt
set d=Robocopy鏡像復(fù)制任務(wù)已經(jīng)完成
set e=%from%
set f=%user%
set g=%pass%
set h=%to%
set i=%smtp%
if exist "%weizhi%" goto abc
md "%weizhi%"
md "%weizhi%\Log"
md "%weizhi%\Log\Robocopy"
md "%weizhi%\Log\Blatmail"
if exist "%mubiao%" goto abc
md "%mubiao%"
:創(chuàng)建復(fù)制腳本
echo @echo off >%weizhi%\robocopy_sc.bat
echo title 執(zhí)行RCMB任務(wù)腳本ING >>%weizhi%\robocopy_sc.bat
:當(dāng)凌晨0點(diǎn)開始到10點(diǎn)前攘须,如果用網(wǎng)上的批處理命名方式,會(huì)有個(gè)空格殴泰。導(dǎo)致無(wú)法應(yīng)用名字于宙。
echo if "%%time:~0,2%%" lss 10 (set y=%%date:~0,4%%%%date:~5,2%%%%date:~8,2%%%%time:~1,1%%%%time:~3,2%%) else (set y=%%date:~0,4%%%%date:~5,2%%%%date:~8,2%%%%time:~0,2%%%%time:~3,2%%)>>%weizhi%\robocopy_sc.bat
:加/tee可以在執(zhí)行命令的時(shí)候查看進(jìn)度 /np關(guān)閉了文件百分比 /xa:sht 排除了系統(tǒng),隱藏悍汛,臨時(shí)文件 /mt:8啟用8線程
echo robocopy %yuan% %mubiao% /mir /copyall /dcopy:DAT /mt:8 /z /xa:sht /a-:h /np /ts /log:%weizhi%\Log\Robocopy\RBLog%%y%%.txt ^>nul >>%weizhi%\robocopy_sc.bat
echo start "" %weizhi%\blatmail\blatmail.bat %a% %b% %c% %d% %e% %f% %g% %h% %i% ^>nul >>%weizhi%\robocopy_sc.bat
:創(chuàng)建一個(gè)查看并執(zhí)行任務(wù)的測(cè)試腳本
echo @echo off >%weizhi%\RunRobocopySchtaskImmediately.bat
echo title 查看并執(zhí)行該任務(wù) >>%weizhi%\RunRobocopySchtaskImmediately.bat
echo echo ------------------------------------------------------------------------------------->>%weizhi%\RunRobocopySchtaskImmediately.bat
echo schtasks /query /tn %taskname% /v /fo list>>%weizhi%\RunRobocopySchtaskImmediately.bat
echo echo ------------------------------------------------------------------------------------- >>%weizhi%\RunRobocopySchtaskImmediately.bat
echo echo. >>%weizhi%\RunRobocopySchtaskImmediately.bat
echo echo. >>%weizhi%\RunRobocopySchtaskImmediately.bat
echo echo. >>%weizhi%\RunRobocopySchtaskImmediately.bat
echo echo 任意鍵立刻執(zhí)行該任務(wù) >>%weizhi%\RunRobocopySchtaskImmediately.bat
echo pause >nul >>%weizhi%\RunRobocopySchtaskImmediately.bat
echo schtasks /run /tn %taskname% >>%weizhi%\RunRobocopySchtaskImmediately.bat
echo echo 任意鍵退出 >>%weizhi%\RunRobocopySchtaskImmediately.bat
echo pause >nul >>%weizhi%\RunRobocopySchtaskImmediately.bat
echo exit >>%weizhi%\RunRobocopySchtaskImmediately.bat
:復(fù)制郵件程序
robocopy "%~dp0blatmail" "%weizhi%\blatmail" /e >nul
:創(chuàng)建任務(wù)
schtasks /create /sc %pinlv% /tn %taskname% /tr "%weizhi%\robocopy_sc.bat" /st %time% /rl highest /f
echo 任意鍵查看該任務(wù)
pause >nul
cls
echo.
echo.
echo.
echo -------------------------------------------------------------------------------------
schtasks /query /tn %taskname% /v /fo list
echo -------------------------------------------------------------------------------------
echo "按任意鍵繼續(xù)"
pause >nul
goto abcd
:abcd
start "" %weizhi%
start "" %mubiao%
exit
:abc
cls
echo.
echo.
echo.
echo.
echo 目錄已經(jīng)存在 請(qǐng)手動(dòng)刪除后重試
echo 任意鍵退出
pause >nul
exit