คำสั่ง Xcopy (ตัวอย่าง ตัวเลือก สวิตช์ และอื่นๆ)

สารบัญ:

คำสั่ง Xcopy (ตัวอย่าง ตัวเลือก สวิตช์ และอื่นๆ)
คำสั่ง Xcopy (ตัวอย่าง ตัวเลือก สวิตช์ และอื่นๆ)
Anonim

คำสั่ง xcopy คือคำสั่งพร้อมรับคำสั่งที่ใช้ในการคัดลอกไฟล์หรือโฟลเดอร์ตั้งแต่หนึ่งไฟล์ขึ้นไปจากที่หนึ่งไปยังอีกที่หนึ่ง

ด้วยตัวเลือกมากมายและความสามารถในการคัดลอกทั้งไดเร็กทอรี มันคล้ายกับ แต่มีประสิทธิภาพมากกว่าคำสั่งคัดลอก คำสั่ง robocopy ก็คล้ายกันแต่มีตัวเลือกมากกว่า

Image
Image

พร้อมใช้งานคำสั่ง Xcopy

คำสั่งนี้มีอยู่ใน Command Prompt ในระบบปฏิบัติการ Windows ทั้งหมด รวมถึง Windows 10, Windows 8, Windows 7, Windows Vista, Windows XP, Windows 98 เป็นต้น

คุณยังสามารถเข้าถึงคำสั่งใน MS-DOS เป็นคำสั่ง DOS ได้

ไวยากรณ์คำสั่ง Xcopy

ใช้ไวยากรณ์ต่อไปนี้สำหรับคำสั่ง xcopy:

xcopy แหล่งที่มา [ปลายทาง] [ /a] [ /b] [/c ] [/d [: วันที่] [/e ] [ /f ] [/g ] [/h ] [/i] [ /j] [ /k] [ /l] [ /m] [ /n] [ /o] [ /p] [ /q] [ /r] [ /s] [ /t] [ /u] [ /v] [ /w] [ /x] [ /y] [ /-y] [ /z] [/exclude: file1 [+ file2][+ file3]…] [ /? ]

ความพร้อมใช้งานของสวิตช์คำสั่ง xcopy บางตัวและรูปแบบคำสั่งอื่นๆ อาจแตกต่างไปจากระบบปฏิบัติการกับระบบปฏิบัติการ เรียนรู้วิธีอ่านไวยากรณ์คำสั่ง หากคุณไม่แน่ใจว่าจะอ่านไวยากรณ์ด้านบนหรือในตารางด้านล่างอย่างไร

ตัวเลือกคำสั่ง Xcopy
รายการ Description
แหล่งที่มา นี่กำหนดไฟล์หรือโฟลเดอร์ระดับบนสุดที่คุณต้องการคัดลอก แหล่งที่มาเป็นพารามิเตอร์ที่จำเป็นเท่านั้น ใช้เครื่องหมายคำพูดรอบแหล่งที่มาหากมีการเว้นวรรค
ปลายทาง ตัวเลือกนี้ระบุตำแหน่งที่ควรคัดลอกไฟล์หรือโฟลเดอร์ต้นทาง หากไม่มีรายการปลายทาง ไฟล์หรือโฟลเดอร์จะถูกคัดลอกไปยังโฟลเดอร์เดียวกับที่คุณใช้คำสั่ง xcopy ใช้เครื่องหมายคำพูดรอบปลายทางหากมีช่องว่าง
/a การใช้ตัวเลือกนี้จะคัดลอกไฟล์เก็บถาวรที่พบในแหล่งที่มาเท่านั้น คุณไม่สามารถใช้ /a และ /m ร่วมกันได้
/b ใช้ตัวเลือกนี้เพื่อคัดลอกลิงก์สัญลักษณ์แทนเป้าหมายของลิงก์ ตัวเลือกนี้มีให้ใช้งานครั้งแรกใน Windows Vista
/c ตัวเลือกนี้บังคับให้ xcopy ดำเนินการต่อแม้ว่าจะพบข้อผิดพลาด
/d [ : วันที่] ใช้คำสั่งด้วยตัวเลือก /d และวันที่เฉพาะ ในรูปแบบ MM-DD-YYYY เพื่อคัดลอกไฟล์ที่เปลี่ยนแปลงในหรือหลังวันที่นั้น คุณยังสามารถใช้ตัวเลือกนี้โดยไม่ต้องระบุวันที่เจาะจงเพื่อคัดลอกเฉพาะไฟล์ในแหล่งที่มาที่ใหม่กว่าไฟล์เดิมที่มีอยู่แล้วในปลายทาง สิ่งนี้มีประโยชน์เมื่อใช้ xcopy เพื่อสำรองข้อมูลไฟล์ตามปกติ
/e เมื่อใช้คนเดียวหรือกับ /s ตัวเลือกนี้จะเหมือนกับ /s แต่จะสร้างโฟลเดอร์ว่างในปลายทางด้วย ยังว่างในแหล่งที่มาตัวเลือก /e ยังสามารถใช้ร่วมกับตัวเลือก /t เพื่อรวมไดเรกทอรีว่างและไดเรกทอรีย่อยที่พบในแหล่งที่มาในโครงสร้างไดเรกทอรีที่สร้างในปลายทาง
/f ตัวเลือกนี้จะแสดงพาธแบบเต็มและชื่อไฟล์ของทั้งไฟล์ต้นทางและปลายทางที่กำลังคัดลอก
/g การใช้ xcopy พร้อมตัวเลือกนี้ทำให้คุณสามารถคัดลอกไฟล์ที่เข้ารหัสในต้นทางไปยังปลายทางที่ไม่รองรับการเข้ารหัส ตัวเลือกนี้จะไม่ทำงานเมื่อคัดลอกไฟล์จากไดรฟ์ที่เข้ารหัส EFS ไปยังไดรฟ์ที่เข้ารหัสที่ไม่ใช่ EFS
/h คำสั่งนี้จะไม่คัดลอกไฟล์ที่ซ่อนหรือไฟล์ระบบโดยค่าเริ่มต้น แต่จะทำเมื่อใช้ตัวเลือกนี้
/i ใช้ตัวเลือก /i เพื่อบังคับให้ xcopy ถือว่าปลายทางเป็นไดเรกทอรีหากคุณไม่ได้ใช้ตัวเลือกนี้ และคุณกำลังคัดลอกจากต้นทางที่เป็นไดเร็กทอรีหรือกลุ่มของไฟล์ และคัดลอกไปยังปลายทางที่ไม่มีอยู่ คำสั่ง xcopy จะแจ้งให้คุณป้อนว่าปลายทางเป็นไฟล์หรือไดเร็กทอรี
/j ตัวเลือกนี้จะคัดลอกไฟล์โดยไม่มีบัฟเฟอร์ ซึ่งเป็นคุณสมบัติที่มีประโยชน์สำหรับไฟล์ขนาดใหญ่มาก ตัวเลือกนี้มีให้ใช้งานครั้งแรกใน Windows 7
/k ใช้ตัวเลือกนี้เมื่อคัดลอกไฟล์แบบอ่านอย่างเดียวเพื่อคงแอตทริบิวต์ของไฟล์นั้นไว้ในปลายทาง
/l ใช้ตัวเลือกนี้เพื่อแสดงรายการไฟล์และโฟลเดอร์ที่จะคัดลอก… แต่จริงๆ แล้วไม่มีการคัดลอก ตัวเลือก /l มีประโยชน์หากคุณกำลังสร้างคำสั่งที่ซับซ้อนด้วยตัวเลือกต่างๆ มากมาย และคุณต้องการดูว่ามันจะทำงานอย่างไรในเชิงสมมุติฐาน
/m ตัวเลือกนี้เหมือนกับตัวเลือก /a แต่ xcopy จะปิดแอตทริบิวต์ archive หลังจากคัดลอกไฟล์ คุณไม่สามารถใช้ /m และ /a ร่วมกันได้
/n ตัวเลือกนี้จะสร้างไฟล์และโฟลเดอร์ในปลายทางโดยใช้ชื่อไฟล์แบบสั้น ตัวเลือกนี้มีประโยชน์เฉพาะเมื่อคุณใช้คำสั่งเพื่อคัดลอกไฟล์ไปยังปลายทางที่มีอยู่ในไดรฟ์ที่ฟอร์แมตเป็นระบบไฟล์รุ่นเก่า เช่น FAT ที่ไม่รองรับชื่อไฟล์แบบยาว
/o รักษาความเป็นเจ้าของและข้อมูลรายการควบคุมการเข้าถึง (ACL) ในไฟล์ที่เขียนในปลายทาง.
/p เมื่อใช้ตัวเลือกนี้ คุณจะได้รับแจ้งก่อนการสร้างแต่ละไฟล์ในปลายทาง.
/q ตรงข้ามกับตัวเลือก /f สวิตช์ /q จะทำให้ xcopy เข้าสู่โหมด "เงียบ" โดยข้ามไป - การแสดงหน้าจอของแต่ละไฟล์ที่คัดลอก
/r ใช้ตัวเลือกนี้เพื่อเขียนทับไฟล์แบบอ่านอย่างเดียวในปลายทาง หากคุณไม่ได้ใช้ตัวเลือกนี้เมื่อต้องการเขียนทับไฟล์แบบอ่านอย่างเดียวในปลายทาง คุณจะได้รับข้อความแจ้งว่า "ปฏิเสธการเข้าถึง" และคำสั่งจะหยุดทำงาน
/s ใช้ตัวเลือกนี้เพื่อคัดลอกไดเร็กทอรี ไดเร็กทอรีย่อย และไฟล์ที่อยู่ในไดเร็กทอรี นอกเหนือจากไฟล์ในรูทของซอร์ส โฟลเดอร์ที่ว่างเปล่าจะไม่ถูกสร้างขึ้นใหม่
/t ตัวเลือกนี้บังคับให้คำสั่ง xcopy สร้างโครงสร้างไดเร็กทอรีในปลายทางแต่ห้ามคัดลอกไฟล์ใดๆ กล่าวอีกนัยหนึ่ง โฟลเดอร์และโฟลเดอร์ย่อยที่พบในแหล่งที่มาจะถูกสร้างขึ้น แต่เราไม่มีไฟล์ โฟลเดอร์ที่ว่างเปล่าจะไม่ถูกสร้างขึ้น
/u ตัวเลือกนี้จะคัดลอกไฟล์ในแหล่งที่มาที่อยู่ในปลายทางแล้วเท่านั้น
/v ตัวเลือกนี้จะตรวจสอบแต่ละไฟล์ตามที่เขียน โดยอิงตามขนาดของไฟล์ เพื่อให้แน่ใจว่าตรงกัน การยืนยันถูกสร้างขึ้นในคำสั่งที่เริ่มต้นใน Windows XP ดังนั้นตัวเลือกนี้จึงไม่ทำอะไรเลยใน Windows รุ่นที่ใหม่กว่า และรวมไว้เฉพาะความเข้ากันได้กับไฟล์ MS-DOS ที่เก่ากว่าเท่านั้น
/w ใช้ตัวเลือก /w เพื่อแสดงข้อความ "กดปุ่มใดก็ได้เมื่อพร้อมที่จะคัดลอกไฟล์" คำสั่งจะเริ่มคัดลอกไฟล์ตามคำแนะนำหลังจากที่คุณยืนยันด้วยการกดปุ่ม ตัวเลือกนี้ไม่เหมือนกับตัวเลือก /p ที่ขอการตรวจสอบก่อนคัดลอกไฟล์แต่ละไฟล์
/x ตัวเลือกนี้จะคัดลอกการตั้งค่าการตรวจสอบไฟล์และข้อมูล System Access Control List (SACL) คุณบอกเป็นนัยว่า /o เมื่อคุณใช้ตัวเลือก /x
/y ใช้ตัวเลือกนี้เพื่อหยุดคำสั่งไม่ให้แจ้งเตือนคุณเกี่ยวกับการเขียนทับไฟล์จากแหล่งที่มาที่มีอยู่แล้วในปลายทาง.
/-y ใช้ตัวเลือกนี้เพื่อบังคับคำสั่งให้คุณเขียนทับไฟล์ นี่อาจดูเหมือนเป็นตัวเลือกแปลก ๆ ที่มีอยู่เนื่องจากนี่เป็นพฤติกรรมเริ่มต้นของ xcopy แต่ตัวเลือก /y อาจถูกตั้งค่าไว้ล่วงหน้าในตัวแปรสภาพแวดล้อม COPYCMD บนคอมพิวเตอร์บางเครื่อง ทำให้ตัวเลือกนี้จำเป็น
/z ตัวเลือกนี้อนุญาตให้คำสั่ง xcopy หยุดการคัดลอกไฟล์ได้อย่างปลอดภัยเมื่อการเชื่อมต่อเครือข่ายขาดหายไป จากนั้นทำสำเนาต่อจากจุดที่ค้างไว้เมื่อการเชื่อมต่อได้รับการเชื่อมต่อใหม่ ตัวเลือกนี้ยังแสดงเปอร์เซ็นต์ที่คัดลอกสำหรับแต่ละไฟล์ระหว่างขั้นตอนการคัดลอก
/exclude: file1 [ + file2][ + file3]… ตัวเลือกนี้ให้คุณระบุชื่อไฟล์ตั้งแต่หนึ่งชื่อขึ้นไปที่มีรายการสตริงการค้นหาที่คุณต้องการให้คำสั่งใช้เพื่อกำหนดไฟล์และ/หรือโฟลเดอร์ที่จะข้ามเมื่อคัดลอก
/? ใช้สวิตช์ความช่วยเหลือด้วย xcopy เพื่อแสดงความช่วยเหลือโดยละเอียดเกี่ยวกับคำสั่ง การดำเนินการ xcopy /? เหมือนกับการใช้คำสั่ง help เพื่อดำเนินการ help xcopy.

คำสั่ง xcopy จะเพิ่มแอตทริบิวต์ archive ให้กับไฟล์ในปลายทาง ไม่ว่าแอตทริบิวต์นั้นจะเปิดหรือปิดอยู่ในไฟล์ในซอร์ส

ตัวอย่างคำสั่ง Xcopy

ต่อไปนี้คือตัวอย่างวิธีใช้คำสั่งนี้:

คัดลอกไฟล์ไปยังโฟลเดอร์ใหม่


xcopy C:\Files E:\Files /i

ในตัวอย่างข้างต้น ไฟล์ที่อยู่ในไดเร็กทอรีต้นทางของ C:\Files จะถูกคัดลอกไปยังปลายทาง ไดเร็กทอรีใหม่ บนไดรฟ์ E ชื่อ Files

ไม่มีไดเรกทอรีย่อยหรือไฟล์ใด ๆ ที่อยู่ภายในจะถูกคัดลอกเนื่องจากไม่ได้ใช้ตัวเลือก /s

สคริปต์สำรอง Xcopy


xcopy "C:\ไฟล์สำคัญ" D:\Backup /c /d /e /h /i /k /q /r /s /x /y

ในตัวอย่างนี้ xcopy ออกแบบมาเพื่อทำหน้าที่เป็นโซลูชันสำรอง ลองใช้วิธีนี้หากคุณต้องการใช้ xcopy แทนโปรแกรมซอฟต์แวร์สำรองข้อมูลเพื่อสำรองไฟล์ของคุณ ใส่คำสั่งดังที่แสดงด้านบนในสคริปต์และกำหนดเวลาให้รันทุกคืน

ดังที่แสดงด้านบน คำสั่งนี้ใช้เพื่อคัดลอกไฟล์และโฟลเดอร์ทั้งหมด [/s] ที่ใหม่กว่าที่คัดลอกไว้แล้ว [/d] รวมถึงโฟลเดอร์ว่าง [/e] และไฟล์ที่ซ่อนอยู่ [/h] จาก แหล่งที่มาของ C:\Important Files ไปยังปลายทางของ D:\Backup ซึ่งเป็นไดเร็กทอรี เรามีไฟล์แบบอ่านอย่างเดียวที่เราต้องการให้อัปเดตในปลายทาง [/r] และเราต้องการเก็บแอตทริบิวต์นั้นไว้หลังจากถูกคัดลอก [/k]เรายังต้องการให้แน่ใจว่าเราคงความเป็นเจ้าของและการตั้งค่าการตรวจสอบไว้ในไฟล์ที่เรากำลังคัดลอก [/x] สุดท้าย เนื่องจากเราใช้ xcopy ในสคริปต์ เราจึงไม่จำเป็นต้องดูข้อมูลใด ๆ เกี่ยวกับไฟล์ในขณะที่คัดลอก [/q] เราไม่ต้องการให้เขียนทับแต่ละไฟล์ [/y] และเราไม่ต้องการให้คำสั่งหยุดทำงานหากเกิดข้อผิดพลาด [/c].

คัดลอกไฟล์และโฟลเดอร์ผ่านเครือข่าย


xcopy C:\Videos "\\SERVER\Media Backup" /f /j /s /w /z

ที่นี่ คำสั่งใช้เพื่อคัดลอกไฟล์ โฟลเดอร์ย่อย และไฟล์ทั้งหมดที่อยู่ในโฟลเดอร์ย่อย [/s] จากต้นทางของ C:\Videos ไปยังโฟลเดอร์ปลายทาง Media Backup ที่อยู่ในคอมพิวเตอร์บนเครือข่ายโดย ชื่อของเซิร์ฟเวอร์ เรากำลังคัดลอกไฟล์วิดีโอขนาดใหญ่จริงๆ ดังนั้นการบัฟเฟอร์จึงควรปิดการใช้งานเพื่อปรับปรุงกระบวนการคัดลอก [/j] และเนื่องจากเรากำลังคัดลอกผ่านเครือข่าย เราต้องการที่จะสามารถคัดลอกต่อได้หากเราสูญเสียการเชื่อมต่อเครือข่าย [/z]. ด้วยความหวาดระแวง เราต้องการได้รับแจ้งให้เริ่มกระบวนการก่อนที่จะดำเนินการใดๆ จริง ๆ [/w] และเราต้องการดูรายละเอียดทุกอย่างเกี่ยวกับไฟล์ที่กำลังถูกคัดลอกขณะกำลังคัดลอก [/f]

โครงสร้างโฟลเดอร์ซ้ำ


xcopy C:\Client032 C:\Client033 /t /e

ในตัวอย่างสุดท้ายนี้ เรามีซอร์สที่เต็มไปด้วยไฟล์และโฟลเดอร์ที่จัดระเบียบอย่างดีใน C:\Client032 สำหรับลูกค้า เราได้สร้างโฟลเดอร์ปลายทางว่างแล้ว Client033 สำหรับลูกค้าใหม่ แต่เราไม่ต้องการคัดลอกไฟล์ใด ๆ เพียงแค่โครงสร้างโฟลเดอร์ว่าง [/t] เพื่อที่เราจะได้จัดระเบียบและเตรียมพร้อม เรามีโฟลเดอร์ว่างใน C:\Client032 ที่อาจใช้กับไคลเอนต์ใหม่ ดังนั้นเราจึงต้องการให้แน่ใจว่าได้คัดลอกโฟลเดอร์เหล่านั้นด้วย [/e].

บันทึกผลลัพธ์ที่ยาวบางครั้งของคำสั่ง xcopy ไปยังไฟล์โดยใช้ตัวดำเนินการเปลี่ยนเส้นทาง เรียนรู้วิธีเปลี่ยนเส้นทางเอาต์พุตคำสั่งไปยังไฟล์หรือดูคำแนะนำเพิ่มเติมจาก Command Prompt Tricks

Xcopy & Xcopy32

ใน Windows 98 และ Windows 95 มีคำสั่ง xcopy สองเวอร์ชัน: xcopy และ xcopy32 อย่างไรก็ตาม คำสั่งหลังไม่ได้ตั้งใจให้รันโดยตรง

เมื่อคุณรัน xcopy ใน Windows 95 หรือ 98 ทั้งเวอร์ชัน 16 บิตดั้งเดิมจะถูกดำเนินการโดยอัตโนมัติ (เมื่ออยู่ในโหมด MS-DOS) หรือเวอร์ชัน 32 บิตที่ใหม่กว่าจะถูกดำเนินการโดยอัตโนมัติ (เมื่ออยู่ใน Windows)

เพื่อความชัดเจน ไม่ว่าคุณจะใช้ Windows หรือ MS-DOS เวอร์ชันใด ให้เรียกใช้คำสั่ง xcopy เสมอ ไม่ใช่ xcopy32 แม้ว่าจะพร้อมใช้งานก็ตาม เมื่อคุณรัน xcopy คุณจะใช้คำสั่งเวอร์ชันที่เหมาะสมที่สุดเสมอ

Xcopy คำสั่งที่เกี่ยวข้อง

คำสั่ง xcopy คล้ายกับคำสั่งคัดลอกในหลาย ๆ ทาง แต่มีตัวเลือกที่มากกว่า เช่น ความสามารถในการคัดลอกโฟลเดอร์ คัดลอกทุกไฟล์ในไดเรกทอรีย่อย และแยกไฟล์ออก

คำสั่งนี้เหมือนกับคำสั่ง robocopy มาก ยกเว้นว่า robocopy จะมีความยืดหยุ่นมากกว่า xcopy

คำสั่ง dir มักใช้กับ xcopy เพื่อตรวจสอบว่าโฟลเดอร์และไฟล์ใดอยู่ในไดเร็กทอรีก่อนที่จะทำคำสั่งให้สมบูรณ์

แนะนำ: