您好,登錄后才能下訂單哦!
小編給大家分享一下Xcopy如何復制文件和目錄,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
Xcopy
復制文件和目錄,包括子目錄。
語法
xcopy Source [Destination] [/w] [/p] [/c] [/v] [/q] [/f] [/l] [/g] [/d[:mm-dd-yyyy]] [/u] [/i] [/s [/e]] [/t] [/k] [/r] [/h] [{/a|/m}] [/n] [/o] [/x] [/exclude:file1[+[file2]][+[file3]] [{/y|/-y}] [/z]
參數
Source
必需的。指定要復制的文件的位置和名稱。該參數必須包含驅動器或路徑。
Destination
指定要復制的文件的目標。該參數可以包含驅動器盤符和冒號、目錄名、文件名或者它們的組合。
/w
在開始復制文件之前將顯示以下消息并等待您的響應:
Press any key to begin copying file(s)
/p
提示您確認是否要創建每個目標文件。
/c
忽略錯誤。
/v
在寫入目標文件時驗證每個文件,以確保目標文件與源文件完全相同。
/q
禁止顯示 xcopy 消息。
/f
復制時顯示源文件名和目標文件名。
/l
顯示要復制的文件列表。
/g
創建解密的目標文件。
/d[:mm-dd-yyyy]
只復制那些在指定日期或指定日期之后更改過的源文件。如果不包括 mm-dd-yyyy 值,xcopy 會復制比現有 Destination 文件新的所有 Source 文件。該命令行選項使您可以更新更改過的文件。
/u
只從 source 復制 destination 中已有的文件。
/i
如果 Source 是一個目錄或包含通配符,而 Destination 不存在,xcopy 會假定 destination 指定目錄名并創建一個新目錄。然后,xcopy 會將所有指定文件復制到新目錄中。默認情況下,xcopy 將提示您指定 destination 是文件還是目錄。
/s
復制非空的目錄和子目錄。如果省略 /s,xcopy 將在一個目錄中工作。
/e
復制所有子目錄,包括空目錄。同時使用 /e、/s 和 /t 命令行選項。
/t
只復制子目錄結構(即目錄樹),不復制文件。要復制空目錄,必須包含 /e 命令行選項。
/k
復制文件,如果源文件具有只讀屬性,則在目標文件中保留該屬性。默認情況下,xcopy 會刪除只讀屬性。
/r
復制只讀文件。
/h
復制具有隱藏和系統文件屬性的文件。默認情況下,xcopy 不復制隱藏或系統文件。
/a
只復制那些具有存檔文件屬性設置的源文件。/a 不修改源文件的存檔文件屬性。有關如何通過使用 attrib 來設置存檔文件屬性的信息,請參閱“”。
/m
復制具有存檔文件屬性設置的源文件。與 /a 不同,/m 關閉在源中指定的文件的存檔文件屬性。有關如何通過使用 attrib 來設置存檔文件屬性的信息,請參閱“”。
/n
使用 NTFS 短文件或目錄名創建副本。將文件或目錄從 NTFS 卷復制到 FAT 卷或者當目標文件系統需要 FAT 文件系統命名約定(即 8.3 個字符)時,需要 /n。目標文件系統可以是 FAT 或 NTFS。
/o
復制文件所有權與自由選擇的訪問控制列表 (DACL) 信息。
/x
復制文件審核設置和系統訪問控制列表 (SACL) 信息(包含 /o)。
/exclude:filename1[+[filename2]][+[filename3]]
指定包含字符串的文件列表。
/y
禁止提示您確認要覆蓋現存的目標文件。
/-y
提示您確認要覆蓋現有目標文件。
/z
在可重啟模式中通過網絡復制。
/?
在命令提示符顯示幫助。
注釋
使用 /v
XOX
使用 /exclude
列出每個文件的單獨行中的每個字符串。如果列出的任何字符串與要復制的文件的絕對路徑的任何部分匹配,就從復制進程排除該文件。例如,如果指定字符串 "\Obj\",則會排除 Obj 目錄下的所有文件。如果指定字符串 ".obj",則排除具有 .obj 擴展名的所有文件。
使用 /z
如果在復制過程中丟失連接(例如,如果用于連接的服務器脫機),復制過程將在重新建立連接后恢復。/z 也顯示每個文件完成的復制操作的百分比。
在 COPYCMD 環境變量中使用 /y
可在 COPYCMD 環境變量中使用 /y。在命令行上使用 /-y 可以覆蓋該命令。默認情況下,會提示您覆蓋,除非您從批處理腳本內運行 copy。
復制加密的文件
將加密文件復制到不支持 EFS 的卷會導致錯誤。應首先解密文件或將文件復制到支持 EFS 的卷中。
附屬文件
要附加文件,請指定單個目標文件,多個源文件(使用通配符或文件 1 + 文件 2 + 文件 3 格式)。
Destination 的默認值
如果省略 Destination,xcopy 命令將文件復制到當前目錄。
指定 Destination 是文件還是目錄
如果 Destination 不包含現有目錄且不以反斜杠 (\) 結尾,會出現下列消息:
Does destination specify a file name
or directory name on the target
(F = file, D = directory)?
如果要將一個或多個文件復制到一個文件,請按 F。如果要將一個或多個文件復制到一個目錄,請按 D。
使用 /i 命令行選項可抑制顯示該消息,從而導致 xcopy 認定在源是多個文件或一個目錄的情況下,目標是一個目錄。
使用 xcopy 命令設置 Destination 文件的存檔屬性
xcopy 命令創建具有存檔屬性設置的文件,無論源文件中是否設定了此屬性。有關文件屬性和 attrib 的詳細信息,請參閱“”。
比較 xcopy 和 diskcopy
如果磁盤的子目錄中包含文件,要將其復制到具有不同格式的磁盤中,請使用 xcopy 命令,而不要使用 diskcopy。因為 diskcopy 命令是一個磁道接一個磁道地復制磁盤,所以需要源磁盤和目標磁盤的格式必須相同。xcopy 命令沒有該要求。通常情況下請使用 xcopy,除非您需要完整的磁盤圖像副本。
xcopy 的退出碼
要處理 xcopy 返回的退出碼,請在批處理程序的 if 命令行上使用 errorlevel 參數。有關使用“if”處理退出碼的批處理程序的范例,請參閱“”。下表列出每一個退出碼和說明。
退出碼 說明
0 文件復制沒有錯誤。
1 沒有找到要復制的文件。
2 用戶按 CTRL+C 終止了 xcopy。
4 出現了初始化錯誤。沒有足夠的內存或磁盤空間,或命令行上輸入了無效的驅動器名稱或語法。
5 出現了磁盤寫入錯誤。
范例
要從驅動器 A 將所有文件和子目錄(包括所有空的子目錄)復制到驅動器 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
如果只想獲得前一個命令要復制的文件列表,而不復制文件,請鍵入:
xcopy \rawdata \reports /d:12-29-1993 /l > xcopy.out
文件 Xcopy.out 列出了要復制的所有文件。
要將 \Customer 目錄和所有子目錄復制到網絡驅動器 H: 上的目錄 \\Public\Address,保留只讀屬性,并在 H: 上創建新文件時對您做出提示,請鍵入:
xcopy \customer h:\public\address /s /e /k /p
要發出上一個命令,確保在 \Address 目錄不存在時 xcopy 會創建該目錄,同時應抑制顯示創建新目錄時要顯示的消息,請按如下所示添加 /i 命令行選項:
xcopy \customer h:\public\address /s /e /k /p /i
可以創建批處理程序執行 xcopy 操作,并且使用 if 批處理命令在發生錯誤時處理退出碼。例如,以下的批處理程序使用可替換的 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 目錄和其子目錄中的所有文件復制到驅動器 B 中,請鍵入:
copyit c:\prgmcode b:
該命令解釋程序將用 C:\Prgmcode 替換 %1 與 B:。對于 %2,然后使用 xcopy 與 /e 和 /s 命令行選項。如果 xcopy 遇到錯誤,批處理程序將讀取退出碼并轉到相應 IF ERRORLEVEL 語句中指示的標簽,然后顯示相應的消息并退出批處理程序。
xcopy 如何取消 消息 是目錄 還是文件的解決方法
xcopy d:\testcopy\*.* e:\testCopy
目標 E:\testCopy 是文件名
還是目錄名
(F = 文件,D = 目錄)?
怎么取消掉這個 是文件還是目錄的提示框?
/Y 是覆蓋取消提示 ,防止之后提示
\ 是在新建的時候取消提示
幫助文檔在 XCOPY /? 找到
正確的是
XCOPY D:\dir F:\dir\ /Y
在新的目錄加上 \ 然后帶/Y 這樣在第一次多次的時候就不會提示了
或者我們用管道符
echo f | XCOPY D:\dir F:\dir /Y
或
echo d | XCOPY D:\dir F:\dir /Y
這樣就不用帶\了。
以上是“Xcopy如何復制文件和目錄”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。