午夜国产狂喷潮在线观看|国产AⅤ精品一区二区久久|中文字幕AV中文字幕|国产看片高清在线

    bat批處理之文件與文件夾操作代碼(附xcopy命令詳解)
    來源:易賢網 閱讀:3254 次 日期:2016-06-14 10:27:05
    溫馨提示:易賢網小編為您整理了“bat批處理之文件與文件夾操作代碼(附xcopy命令詳解)”,方便廣大網友查閱!

    本文介紹下,在批處理腳本中,操作文件與文件夾的方法,包括文件的復制、刪除、移動等操作,并附有xcopy命令的詳細用法,有需要的朋友參考下吧

    批處理中的文件、文件夾操作,xcopy命令的用法。

    一,建bat文件自動執(zhí)行復制,刪除命令。

    例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

    二,創(chuàng)建文件夾

    例:在e:\my documents下面一次創(chuàng)建3個新文件夾:newfolder1,newfolder2,newfolder3

    代碼如下:

    @echo off

    md e:\my documents\newfolder1

    md e:\my documents\newfolder2

    md e:\my documents\newfolder3

    三,執(zhí)行程序,打開文件

    例1:執(zhí)行c盤下的winword.exe程序

    代碼如下:

    start c:\winword.exe

    例2:用某個程序打開某個文件,如用theworld.exe打開一個htm文件

    復制代碼 代碼如下:start d:\theworld\theworld.exe c:\我有一個戀愛.htm

    [注意]:不論是程序或文件路徑中含有空格,都必須用引號括起來:

    代碼如下:

    start d:\theworld\theworld.exe e:\my documents\我有一個戀愛.htm

    所有程序中的引號不能是全角的,必須用半角的格式,所以輸入引號前最好關閉漢字輸入系統(tǒng)

    xcopy 還有眾多的功能, 是加參數來完成的。上面的/s /e 參數的作用分別是把子目錄和空目錄都復制過去,一些使用舉例和參數說明如下:

    1、如只是單純地復制 e:\ 盤上所有文件到 d:\ 盤上,就輸入“ xcopy e:\*.* d: /s /h 就行啦!如果在復制過程中,你不要他復制文件啦!那就按鍵盤熱鍵“ctrl +pause /break 二個熱鍵 來中斷復制。

    2、如果想把e:\ 盤上所有文件復制到d:\盤上,分為今天復制一點,明天再接著復制一些,后天再接著復制一些?;蛘呤悄撤N原因上次沒有復制完成,今天想接著復制。(這種情況是經常在復制文件中出現的)那可怎么辦才好呢?

    那就輸入“ xcopy e:\*.* d: /s /h /d /y ”就行啦。他能查出那些文件是已經復制過去啦,那些文件還沒有復制過去的。

    3、當然我們也會碰到這種情況,一些文件我們已經修改過啦!網上面又有最新版本的啦。原來備份的那份文件我們要及時更新啦。那怎么才能同步更新呢?當然我們可以把最新的好份文件復制過去,這也是一種解決辦法。

    如果修改的文件有很多的,自己到時候也記不清楚那份文件是更新過的。這么多的原來備份的那份文件都要更新,都要復制過去,可不是件省力氣的活,而且容易出錯和一些文件被忘記啦!

    那和上面一樣也同樣輸入 xcopy e:\*.* d: /s /h /d /y 就行啦!

    4、還有一種情況我們經常也碰到的,因為復制某個文件出錯或者這個文件在使用中,而停止了復制工作,(比如,復制c 盤上的 windows xp )我們這時候想跳過某個出錯的文件和某個正在使用中文件而繼續(xù)復制其他文件。

    在多加入一個參數 /c 就是 xcopy e:\*.* d: /s /h /d /c /y 就行啦!

    5、有時候我們想xcopy 變?yōu)樽詣訌椭?,并且復制完成后關閉電腦,可以建立一個批處理文件,新建文本文檔,更名為xcopy.bat 當然擴展名原來是txt 格式的要更名為bat 在這個 xcopy.bat 中輸入

    代碼如下:

    xcopy e:\*.* d: /s /h /c /y

    shutdown -s 

    然后雙擊xcopy.bat 運行它,你這時候可以出去玩啦。電腦會自己復制備份完成文件然后自動關閉電腦。

    xcopy source [destination] 參數(如 /s /e)

    source 指定要復制的文件。

    destination 指定新文件的位置和/或名稱。

    /a 只復制有存檔屬姓集的文件,

    但不改變屬姓。

    /m 只復制有存檔屬姓集的文件,

    并關閉存檔屬姓。

    /d:m-d-y 復制在指定日期或指定日期以后改變的文件。

    如果沒有提供日期,只復制那些源時間

    比目標時間新的文件。

    /exclude:file1[+file2][+file3]...

    指定含有字符串的文件列表。如果有任何

    字符串與要被復制的文件的絕對路徑

    相符,那個文件將不會得到復制。

    例如,指定如 \obj\ 或 .obj 的字符串會排除

    目錄 obj 下面的所有文件或帶有

    .obj 擴展名的文件。

    /p 創(chuàng)建每個目標文件前提示。

    /s 復制目錄和子目錄,除了空的。

    /e 復制目錄和子目錄,包括空的。

    與 /s /e 相同。可以用來修改 /t。

    /v 驗證每個新文件。

    /w 提示您在復制前按鍵。

    /c 即使有錯誤,也繼續(xù)復制。

    /i 如果目標不存在,又在復制一個以上的文件,

    則假定目標一定是一個目錄。

    /q 復制時不顯示文件名。

    /f 復制時顯示完整的源和目標文件名。

    /l 顯示要復制的文件。

    /g 允許將沒有經過加密的文件復制到

    不支持加密的目標。

    /h 也復制隱藏和系統(tǒng)文件。

    /r 改寫只讀文件。

    /t 創(chuàng)建目錄結構,但不復制文件。不

    包括空目錄或子目錄。/t /e 包括

    空目錄和子目錄。

    /u 只復制已經存在于目標中的文件。

    /k 復制屬姓。一般的 xcopy 會重設只讀屬姓。

    /n 用生成的短名復制。

    /o 復制文件所有權和 acl 信息。

    /x 復制文件審核設置(隱含 /o)。

    /y 禁止提示以確認改寫一個

    現存目標文件。

    /-y 導致提示以確認改寫一個

    現存目標文件。

    /z 用重新啟動模式復制網絡文件。

    xcopy 命令

    復制文件和目錄,包括子目錄。

    語法

    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

    必需的。指定要復制的文件的位置和名稱。該參數必須包含驅動器或路徑。

    destination

    指定要復制的文件的目標。該參數可以包含驅動器盤符和冒號、目錄名、文件名或者它們的組合。

    /w

    在開始復制文件之前將顯示以下消息并等待您的響應:

    press any key to begin copying file(s)

    /p

    提示您確認是否要創(chuàng)建每個目標文件。

    /c

    忽略錯誤。

    /v

    在寫入目標文件時驗證每個文件,以確保目標文件與源文件完全相同。

    /q

    禁止顯示 xcopy 消息。

    /f

    復制時顯示源文件名和目標文件名。

    /l

    顯示要復制的文件列表。

    /g

    創(chuàng)建解密的目標文件。

    /d[:mm-dd-yyyy]

    只復制那些在指定日期或指定日期之后更改過的源文件。如果不包括 mm-dd-yyyy 值,xcopy 會復制比現有 destination 文件新的所有 source 文件。該命令行選項使您可以更新更改過的文件。

    /u

    只從 source 復制 destination 中已有的文件。

    /i

    如果 source 是一個目錄或包含通配符,而 destination 不存在,xcopy 會假定 destination 指定目錄名并創(chuàng)建一個新目錄。然后,xcopy 會將所有指定文件復制到新目錄中。默認情況下,xcopy 將提示您指定 destination 是文件還是目錄。

    /s

    復制非空的目錄和子目錄。如果省略 /s,xcopy 將在一個目錄中工作。

    /e

    復制所有子目錄,包括空目錄。同時使用 /e、/s 和 /t 命令行選項。

    /t

    只復制子目錄結構(即目錄樹),不復制文件。要復制空目錄,必須包含 /e 命令行選項。

    /k

    復制文件,如果源文件具有只讀屬姓,則在目標文件中保留該屬姓。默認情況下,xcopy 會刪除只讀屬姓。

    /r

    復制只讀文件。

    /h

    復制具有隱藏和系統(tǒng)文件屬姓的文件。默認情況下,xcopy 不復制隱藏或系統(tǒng)文件。

    /a

    只復制那些具有存檔文件屬姓設置的源文件。/a 不修改源文件的存檔文件屬姓。有關如何通過使用 attrib 來設置存檔文件屬姓的信息,請參閱“”。

    /m

    復制具有存檔文件屬姓設置的源文件。與 /a 不同,/m 關閉在源中指定的文件的存檔文件屬姓。有關如何通過使用 attrib 來設置存檔文件屬姓的信息,請參閱“”。

    /n

    使用 ntfs 短文件或目錄名創(chuàng)建副本。將文件或目錄從 ntfs 卷復制到 fat 卷或者當目標文件系統(tǒng)需要 fat 文件系統(tǒng)命名約定(即 8.3 個字符)時,需要 /n。目標文件系統(tǒng)可以是 fat 或 ntfs。

    /o

    復制文件所有權與自由選擇的訪問控制列表 (dacl) 信息。

    /x

    復制文件審核設置和系統(tǒng)訪問控制列表 (sacl) 信息(包含 /o)。

    /exclude:filename1[+[filename2]][+[filename3]]

    指定包含字符串的文件列表。

    /y

    禁止提示您確認要覆蓋現存的目標文件。

    /-y

    提示您確認要覆蓋現有目標文件。

    /z

    在可重啟模式中通過網絡復制。

    /?

    在命令提示符顯示幫助。

    注釋

    使用 /v

    xox

    使用 /exclude

    列出每個文件的單獨行中的每個字符串。如果列出的任何字符串與要復制的文件的絕對路徑的任何部分匹配,就從復制進程排除該文件。例如,如果指定字符串 \obj\,則會排除 obj 目錄下的所有文件。如果指定字符串 .obj,則排除具有 .obj 擴展名的所有文件。

    使用 /z

    如果在復制過程中丟失連接(例如,如果用于連接的服務器脫機),復制過程將在重新建立連接后恢復。/z 也顯示每個文件完成的復制操作的百分比。

    在 copycmd 環(huán)境變量中使用 /y

    可在 copycmd 環(huán)境變量中使用 /y。在命令行上使用 /-y 可以覆蓋該命令。默認情況下,會提示您覆蓋,除非您從批處理腳本內運行 copy。

    復制加密的文件

    將加密文件復制到不支持 efs 的卷會導致錯誤。應首先解密文件或將文件復制到支持 efs 的卷中。

    附屬文件

    要附加文件,請指定單個目標文件,多個源文件(使用通配符或文件 1 + 文件 2 + 文件 3 格式)。

    本節(jié)是 bat批處理文件與文件夾(附xcopy命令詳解) 第二部的內容,請大家繼續(xù)閱讀。

    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 命令創(chuàng)建具有存檔屬姓設置的文件,無論源文件中是否設定了此屬姓。有關文件屬姓和 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

    要包含上一示例中的任何系統(tǒng)或隱藏文件,請按如下所示添加 /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: 上的目錄 ,保留只讀屬姓,并在 h: 上創(chuàng)建新文件時對您做出提示,請鍵入:

    xcopy \customer h:\public\address /s /e /k /p

    要發(fā)出上一個命令,確保在 \address 目錄不存在時 xcopy 會創(chuàng)建該目錄,同時應抑制顯示創(chuàng)建新目錄時要顯示的消息,請按如下所示添加 /i 命令行選項:

    xcopy \customer h:\public\address /s /e /k /p /i

    可以創(chuàng)建批處理程序執(zhí)行 xcopy 操作,并且使用 if 批處理命令在發(fā)生錯誤時處理退出碼。

    例子,使用可替換的 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 語句中指示的標簽,然后顯示相應的消息并退出批處理程序。

    更多信息請查看腳本欄目

    2025國考·省考課程試聽報名

    • 報班類型
    • 姓名
    • 手機號
    • 驗證碼
    關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
    工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
    聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網