1 建bat文件自動(dòng)執行復制,刪除命令。
例1:以下是復制cd.dll文件至windows\system32的bat文件內容:
copy cd.dll %windir%\system32
例2:下面一行是卸載windows\system32目錄中的cd.dll,即把上面復制的文件刪除:
del %windir%\system32\cd.dll
例3:刪除download文件夾中的文件,例子如下:
del C:\DOWNLOAD\*.*
[注意]:這里的del命令只能刪文件,不能刪文件夾。要刪除文件夾得用rd命令,如下:
rd Filemon
這里filemon文件夾和該bat文件在同一目錄下,就省去具體路徑了。但rd只能刪除空文件夾.
要刪除文件夾及其里面的所有子目錄和文件,用rd命令帶/s /q參數,
/s參數表示刪除該文件夾及其下面的子目錄和文件
/q參數表示,不需要確認
范例如下:
rd 123 /s /q
2 創(chuàng )建文件夾
例:在E:\My documents下面一次創(chuàng )建3個(gè)新文件夾:Newfolder1,Newfolder2,Newfolder3
@echo off
md "E:\My documents\Newfolder1"
md "E:\My documents\Newfolder2"
md "E:\My documents\Newfolder3"
3 執行程序,打開(kāi)文件
例1:執行C盤(pán)下的WinWord.exe程序
start C:\WinWord.exe
例2:用某個(gè)程序打開(kāi)某個(gè)文件,如用TheWorld.exe打開(kāi)一個(gè)htm文件
start d:\TheWorld\TheWorld.EXE C:\我有一個(gè)戀愛(ài).htm
[注意]:不論是程序或文件路徑中含有空格,都必須用引號括起來(lái):
start d:\TheWorld\TheWorld.EXE "e:\My documents\我有一個(gè)戀愛(ài).htm"
所有程序中的引號不能是全角的,必須用半角的格式,所以輸入引號前最好關(guān)閉漢字輸入系統
XCOPY 還有眾多的功能, 是加參數來(lái)完成的。上面的/s /e 參數的作用分別是把子目錄和空目錄都復制過(guò)去,一些使用舉例和參數說(shuō)明如下:
1、如只是單純地復制 E:\ 盤(pán)上所有文件到 D:\ 盤(pán)上,就輸入“ xcopy e:\*.* d: /s /h "就行啦!如果在復制過(guò)程中,你不要他復制文件啦!那就按鍵盤(pán)熱鍵“Ctrl " +"Pause /break" 二個(gè)熱鍵 來(lái)中斷復制。
2、如果想把E:\ 盤(pán)上所有文件復制到D:\盤(pán)上,分為今天復制一點(diǎn),明天再接著(zhù)復制一些,后天再接著(zhù)復制一些?;蛘呤悄撤N原因上次沒(méi)有復制完成,今天想接著(zhù)復制。(這種情況是經(jīng)常在復制文件中出現的)那可怎么辦才好呢?
那就輸入“ xcopy e:\*.* d: /s /h /d /y ”就行啦。他能查出那些文件是已經(jīng)復制過(guò)去啦,那些文件還沒(méi)有復制過(guò)去的。
3、當然我們也會(huì )碰到這種情況,一些文件我們已經(jīng)修改過(guò)啦!網(wǎng)上面又有最新版本的啦。原來(lái)備份的那份文件我們要及時(shí)更新啦。那怎么才能同步更新呢?當然我們可以把最新的好份文件復制過(guò)去,這也是一種解決辦法。
如果修改的文件有很多的,自己到時(shí)候也記不清楚那份文件是更新過(guò)的。這么多的原來(lái)備份的那份文件都要更新,都要復制過(guò)去,可不是件省力氣的活,而且容易出錯和一些文件被忘記啦!
那和上面一樣也同樣輸入" xcopy e:\*.* d: /s /h /d /y "就行啦!
4、還有一種情況我們經(jīng)常也碰到的,因為復制某個(gè)文件出錯或者這個(gè)文件在使用中,而停止了復制工作,(比如,復制C 盤(pán)上的 windows xp )我們這時(shí)候想跳過(guò)某個(gè)出錯的文件和某個(gè)正在使用中文件而繼續復制其他文件。
在多加入一個(gè)參數" /c "就是 " xcopy e:\*.* d: /s /h /d /c /y "就行啦!
5、有時(shí)候我們想XCOPY 變?yōu)樽詣?dòng)復制,并且復制完成后關(guān)閉電腦,可以建立一個(gè)批處理文件,新建文本文檔,更名為XCOPY.BAT 當然擴展名原來(lái)是TXT 格式的要更名為BAT 在這個(gè) XCOPY.BAT 中輸入
xcopy e:\*.* d: /s /h /c /y
shutdown -s
然后雙擊xcopy.bat 運行它,你這時(shí)候可以出去玩啦。電腦會(huì )自己復制備份完成文件然后自動(dòng)關(guān)閉電腦。
XCOPY source [destination] 參數(如 /s /e)
source 指定要復制的文件。
destination 指定新文件的位置和/或名稱(chēng)。
/A 只復制有存檔屬姓集的文件,
但不改變屬姓。
/M 只復制有存檔屬姓集的文件,
并關(guān)閉存檔屬姓。
/D:m-d-y 復制在指定日期或指定日期以后改變的文件。
如果沒(méi)有提供日期,只復制那些源時(shí)間
比目標時(shí)間新的文件。
/EXCLUDE:file1[+file2][+file3]...
指定含有字符串的文件列表。如果有任何
字符串與要被復制的文件的絕對路徑
相符,那個(gè)文件將不會(huì )得到復制。
例如,指定如 \obj\ 或 .obj 的字符串會(huì )排除
目錄 obj 下面的所有文件或帶有
.obj 擴展名的文件。
/P 創(chuàng )建每個(gè)目標文件前提示。
/S 復制目錄和子目錄,除了空的。
/E 復制目錄和子目錄,包括空的。
與 /S /E 相同??梢杂脕?lái)修改 /T。
/V 驗證每個(gè)新文件。
/W 提示您在復制前按鍵。
/C 即使有錯誤,也繼續復制。
/I 如果目標不存在,又在復制一個(gè)以上的文件,
則假定目標一定是一個(gè)目錄。
/Q 復制時(shí)不顯示文件名。
/F 復制時(shí)顯示完整的源和目標文件名。
/L 顯示要復制的文件。
/G 允許將沒(méi)有經(jīng)過(guò)加密的文件復制到
不支持加密的目標。
/H 也復制隱藏和系統文件。
/R 改寫(xiě)只讀文件。
/T 創(chuàng )建目錄結構,但不復制文件。不
包括空目錄或子目錄。/T /E 包括
空目錄和子目錄。
/U 只復制已經(jīng)存在于目標中的文件。
/K 復制屬姓。一般的 Xcopy 會(huì )重設只讀屬姓。
/N 用生成的短名復制。
/O 復制文件所有權和 ACL 信息。
/X 復制文件審核設置(隱含 /O)。
/Y 禁止提示以確認改寫(xiě)一個(gè)
現存目標文件。
/-Y 導致提示以確認改寫(xiě)一個(gè)
現存目標文件。
/Z 用重新啟動(dòng)模式復制網(wǎng)絡(luò )文件。
Xcopy
復制文件和目錄,包括子目錄。
語(yǔ)法
xcopy Source [Destination] [/w] [/p] [/c] [/v] [/q] [/f] [/l] [/g] [/d[:mm-dd-yyyy]] [/s [/e]] [/t] [/k] [/r] [/h] [{/a|/m}] [/n] [/o] [/x] [/exclude:file1[+[file2]][+[file3]] [{/y|/-y}] [/z]
參數
Source
必需的。指定要復制的文件的位置和名稱(chēng)。該參數必須包含驅動(dòng)器或路徑。
Destination
指定要復制的文件的目標。該參數可以包含驅動(dòng)器盤(pán)符和冒號、目錄名、文件名或者它們的組合。
/w
在開(kāi)始復制文件之前將顯示以下消息并等待您的響應:
Press any key to begin copying file(s)
/p
提示您確認是否要創(chuàng )建每個(gè)目標文件。
/c
忽略錯誤。
/v
在寫(xiě)入目標文件時(shí)驗證每個(gè)文件,以確保目標文件與源文件完全相同。
/q
禁止顯示 xcopy 消息。
/f
復制時(shí)顯示源文件名和目標文件名。
/l
顯示要復制的文件列表。
/g
創(chuàng )建解密的目標文件。
/d[:mm-dd-yyyy]
只復制那些在指定日期或指定日期之后更改過(guò)的源文件。如果不包括 mm-dd-yyyy 值,xcopy 會(huì )復制比現有 Destination 文件新的所有 Source 文件。該命令行選項使您可以更新更改過(guò)的文件。
/u
只從 source 復制 destination 中已有的文件。
/i
如果 Source 是一個(gè)目錄或包含通配符,而 Destination 不存在,xcopy 會(huì )假定 destination 指定目錄名并創(chuàng )建一個(gè)新目錄。然后,xcopy 會(huì )將所有指定文件復制到新目錄中。默認情況下,xcopy 將提示您指定 destination 是文件還是目錄。
/s
復制非空的目錄和子目錄。如果省略 /s,xcopy 將在一個(gè)目錄中工作。
/e
復制所有子目錄,包括空目錄。同時(shí)使用 /e、/s 和 /t 命令行選項。
/t
只復制子目錄結構(即目錄樹(shù)),不復制文件。要復制空目錄,必須包含 /e 命令行選項。
/k
復制文件,如果源文件具有只讀屬姓,則在目標文件中保留該屬姓。默認情況下,xcopy 會(huì )刪除只讀屬姓。
/r
復制只讀文件。
/h
復制具有隱藏和系統文件屬姓的文件。默認情況下,xcopy 不復制隱藏或系統文件。
/a
只復制那些具有存檔文件屬姓設置的源文件。/a 不修改源文件的存檔文件屬姓。有關(guān)如何通過(guò)使用 attrib 來(lái)設置存檔文件屬姓的信息,請參閱“”。
/m
復制具有存檔文件屬姓設置的源文件。與 /a 不同,/m 關(guān)閉在源中指定的文件的存檔文件屬姓。有關(guān)如何通過(guò)使用 attrib 來(lái)設置存檔文件屬姓的信息,請參閱“”。
/n
使用 NTFS 短文件或目錄名創(chuàng )建副本。將文件或目錄從 NTFS 卷復制到 FAT 卷或者當目標文件系統需要 FAT 文件系統命名約定(即 8.3 個(gè)字符)時(shí),需要 /n。目標文件系統可以是 FAT 或 NTFS。
/o
復制文件所有權與自由選擇的訪(fǎng)問(wèn)控制列表 (DACL) 信息。
/x
復制文件審核設置和系統訪(fǎng)問(wèn)控制列表 (SACL) 信息(包含 /o)。
/exclude:filename1[+[filename2]][+[filename3]]
指定包含字符串的文件列表。
/y
禁止提示您確認要覆蓋現存的目標文件。
/-y
提示您確認要覆蓋現有目標文件。
/z
在可重啟模式中通過(guò)網(wǎng)絡(luò )復制。
/?
在命令提示符顯示幫助。
注釋
使用 /v
XOX
使用 /exclude
列出每個(gè)文件的單獨行中的每個(gè)字符串。如果列出的任何字符串與要復制的文件的絕對路徑的任何部分匹配,就從復制進(jìn)程排除該文件。例如,如果指定字符串 "\Obj\",則會(huì )排除 Obj 目錄下的所有文件。如果指定字符串 ".obj",則排除具有 .obj 擴展名的所有文件。
使用 /z
如果在復制過(guò)程中丟失連接(例如,如果用于連接的服務(wù)器脫機),復制過(guò)程將在重新建立連接后恢復。/z 也顯示每個(gè)文件完成的復制操作的百分比。
在 COPYCMD 環(huán)境變量中使用 /y
可在 COPYCMD 環(huán)境變量中使用 /y。在命令行上使用 /-y 可以覆蓋該命令。默認情況下,會(huì )提示您覆蓋,除非您從批處理腳本內運行 copy。
復制加密的文件
將加密文件復制到不支持 EFS 的卷會(huì )導致錯誤。應首先解密文件或將文件復制到支持 EFS 的卷中。
附屬文件
要附加文件,請指定單個(gè)目標文件,多個(gè)源文件(使用通配符或文件 1 + 文件 2 + 文件 3 格式)。
Destination 的默認值
如果省略 Destination,xcopy 命令將文件復制到當前目錄。
指定 Destination 是文件還是目錄
如果 Destination 不包含現有目錄且不以反斜杠 (\) 結尾,會(huì )出現下列消息:
Does destination specify a file name
or directory name on the target
(F = file, D = directory)?
如果要將一個(gè)或多個(gè)文件復制到一個(gè)文件,請按 F。如果要將一個(gè)或多個(gè)文件復制到一個(gè)目錄,請按 D。
使用 /i 命令行選項可抑制顯示該消息,從而導致 xcopy 認定在源是多個(gè)文件或一個(gè)目錄的情況下,目標是一個(gè)目錄。
使用 xcopy 命令設置 Destination 文件的存檔屬姓
xcopy 命令創(chuàng )建具有存檔屬姓設置的文件,無(wú)論源文件中是否設定了此屬姓。有關(guān)文件屬姓和 attrib 的詳細信息,請參閱“”。
比較 xcopy 和 diskcopy
如果磁盤(pán)的子目錄中包含文件,要將其復制到具有不同格式的磁盤(pán)中,請使用 xcopy 命令,而不要使用 diskcopy。因為 diskcopy 命令是一個(gè)磁道接一個(gè)磁道地復制磁盤(pán),所以需要源磁盤(pán)和目標磁盤(pán)的格式必須相同。xcopy 命令沒(méi)有該要求。通常情況下請使用 xcopy,除非您需要完整的磁盤(pán)圖像副本。
xcopy 的退出碼
要處理 xcopy 返回的退出碼,請在批處理程序的 if 命令行上使用 errorlevel 參數。有關(guān)使用“if”處理退出碼的批處理程序的范例,請參閱“”。下表列出每一個(gè)退出碼和說(shuō)明。
退出碼 說(shuō)明
0 文件復制沒(méi)有錯誤。
1 沒(méi)有找到要復制的文件。
2 用戶(hù)按 CTRL+C 終止了 xcopy。
4 出現了初始化錯誤。沒(méi)有足夠的內存或磁盤(pán)空間,或命令行上輸入了無(wú)效的驅動(dòng)器名稱(chēng)或語(yǔ)法。
5 出現了磁盤(pán)寫(xiě)入錯誤。
范例
要從驅動(dòng)器 A 將所有文件和子目錄(包括所有空的子目錄)復制到驅動(dòng)器 B,請鍵入:
xcopy a:b:/s /e
要包含上一示例中的任何系統或隱藏文件,請按如下所示添加 /h 命令行選項:
xcopy a:b:/s /e /h
要使用 \Rawdata 目錄中 1993 年 12 月 29 日后更改的文件更新 \Reports 目錄中的文件,請鍵入:
xcopy \rawdata \reports /d:12-29-1993
要更新上例中 \Reports 中存在的所有文件,而不考慮日期,請鍵入:
xcopy \rawdata \reports /u
如果只想獲得前一個(gè)命令要復制的文件列表,而不復制文件,請鍵入:
xcopy \rawdata \reports /d:12-29-1993 /l > xcopy.out
文件 Xcopy.out 列出了要復制的所有文件。
要將 \Customer 目錄和所有子目錄復制到網(wǎng)絡(luò )驅動(dòng)器 H: 上的目錄 \\Public\Address,保留只讀屬姓,并在 H: 上創(chuàng )建新文件時(shí)對您做出提示,請鍵入:
xcopy \customer h:\public\address /s /e /k /p
要發(fā)出上一個(gè)命令,確保在 \Address 目錄不存在時(shí) xcopy 會(huì )創(chuàng )建該目錄,同時(shí)應抑制顯示創(chuàng )建新目錄時(shí)要顯示的消息,請按如下所示添加 /i 命令行選項:
xcopy \customer h:\public\address /s /e /k /p /i
可以創(chuàng )建批處理程序執行 xcopy 操作,并且使用 if 批處理命令在發(fā)生錯誤時(shí)處理退出碼。例如,以下的批處理程序使用可替換的 xcopy 源和目標參數:
@echo off
rem COPYIT.BAT transfers all files in all subdirectories of
rem the source drive or directory (%1) to the destination
rem drive or directory (%2)
xcopy %1 %2 /s /e
if errorlevel 4 goto lowmemory
if errorlevel 2 goto abort
if errorlevel 0 goto exit
:lowmemory
echo Insufficient memory to copy files or
echo invalid drive or command-line syntax.
goto exit
:abort
echo You pressed CTRL+C to end the copy operation.
goto exit
:exit
要使用該批處理程序將 C:\Prgmcode 目錄和其子目錄中的所有文件復制到驅動(dòng)器 B 中,請鍵入:
copyit c:\prgmcode b:
該命令解釋程序將用 C:\Prgmcode 替換 %1 與 B:。對于 %2,然后使用 xcopy 與 /e 和 /s 命令行選項。如果 xcopy 遇到錯誤,批處理程序將讀取退出碼并轉到相應 IF ERRORLEVEL 語(yǔ)句中指示的標簽,然后顯示相應的消息并退出批處理程序。
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請
點(diǎn)擊舉報。