การคัดลอกไฟล์และการคัดลอกไดเร็กทอรีบน Linux

Copying Files Copying Directories Linux



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

ก่อนที่เราจะเริ่มต้นคู่มือนี้ ถึงเวลาแล้วที่จะต้องทราบสั้น ๆ ว่า Linux เข้าใจอะไรโดยการบอกไฟล์หรือโฟลเดอร์ ใน Linux แต่ละโฟลเดอร์เรียกว่าไดเร็กทอรี ไดเร็กทอรีสามารถมีไดเร็กทอรีอื่นและไฟล์ขนาดใดก็ได้ เนื่องจากขนาดไฟล์เพียงพอที่จะใส่ในอุปกรณ์จัดเก็บข้อมูล







เมื่อคุณต้องการคัดลอกไฟล์/โฟลเดอร์ คุณต้องชี้แจงให้ระบบทราบเพียงพอเพื่อไม่ให้เกิดความสับสน เป็นสิ่งที่ยอดเยี่ยมเช่นกันที่เมื่อใดก็ตามที่คุณคัดลอก/ย้ายไฟล์จากไดรฟ์หนึ่งหรืออีกไดรฟ์หนึ่ง คุณจะยังคงใส่ลงในโฟลเดอร์!



เทคนิคการคัดลอก

สำหรับการคัดลอก เราจะใช้คำสั่ง cp นี่คือโครงสร้าง cp พื้นฐาน –



cp [พารามิเตอร์]source_file_directory target_file_directory

ถ้าคุณต้องการคัดลอกไฟล์ไปยังไดเร็กทอรีอื่น คุณต้องรันคำสั่งต่อไปนี้ โปรดทราบว่าฉันกำลังใช้ |_+_| โดยมีไฟล์ทดสอบ 3 ไฟล์เป็นตัวอย่างสำหรับคู่มือนี้





ซีดี~/ดาวน์โหลด/ทดสอบDir

# คัดลอกไฟล์ทั้งหมดที่มีไปยัง |_+_| ไดเรกทอรี

cp *~/เดสก์ทอป/testDir1

ที่นี่ cp เป็นคำสั่งที่เกี่ยวข้องสำหรับการคัดลอกไฟล์จากไดเร็กทอรีหนึ่งไปยังไดเร็กทอรีอื่น มันเป็นเพียงระยะสั้นของการคัดลอก มีตัวเลือกอื่น ๆ เช่น -

  • -ผม - โหมดคัดลอกแบบโต้ตอบ หากโปรแกรมพบว่ามีข้อขัดแย้งใดๆ (ไฟล์มีอยู่แล้ว ฯลฯ) โปรแกรมจะถามถึงการดำเนินการของคุณเกี่ยวกับสถานการณ์
  • -NS - เรียกซ้ำ ตัวเลือกนี้จะคัดลอกไฟล์และไดเรกทอรีที่รวมทั้งหมดไปยังปลายทาง นอกจากนี้ยังจะรักษาโครงสร้างแผนผังของไดเร็กทอรีต้นทาง
  • -v - โหมดละเอียด สิ่งนี้มีประโยชน์หากคุณต้องการรับคำติชมว่างานคัดลอกดำเนินไปได้ด้วยดี สำหรับแต่ละคำถาม มี 2 คำตอบ คือ y (ใช่) และ n (ไม่ใช่)
cp -v *~/เดสก์ทอป/testDir1/

ขอแนะนำให้คุณใช้พารามิเตอร์เหล่านี้เกือบตลอดเวลาเพื่อให้ได้ผลตอบรับที่ดีที่สุดระหว่างขั้นตอนการคัดลอก

cp -irv~/เดสก์ทอป/testDir1/

การคัดลอกทั้งไดเร็กทอรี

ตอนนี้ ลองนึกถึงสถานการณ์เมื่อคุณต้องการคัดลอกไฟล์และไดเร็กทอรี (โฟลเดอร์) ทั้งหมดของคุณไปยังไดเร็กทอรีปลายทาง บางทีคุณอาจคิดจะใช้กลอุบายแบบเดียวกับข้างบนใช่ไหม?

นี่คือการทดสอบรันคำสั่งที่ฉันพยายามจะคัดลอกไฟล์และไดเร็กทอรีทั้งหมดภายใต้ ~/Downloads/ ลงในไดเร็กทอรีย่อยที่สร้างไว้ หลังจากรันคำสั่งนี้ -

cp *ย่อย/

ผลลัพธ์คือสิ่งนี้ -

น่ากลัวใช่มั้ย? ทุกอย่างเรียบร้อยและ cp ควรคัดลอกทุกอย่างลงในไดเร็กทอรีนั้น มีปัญหาอะไร?

คำตอบที่เราได้กล่าวไปแล้วข้างต้น จำพารามิเตอร์ cp -r ได้ไหม มันบอกให้ทำงานซ้ำ - คัดลอกไดเรกทอรีย่อยและไฟล์ทั้งหมดจากต้นทางไปยังปลายทาง

มาแก้ไขทันที! เรียกใช้คำสั่งคงที่ –

cp -vr *ย่อย/

ตอนนี้ทุกอย่างดูดีและทำงานได้ดี

สิ่งที่น่าสนใจที่ควรทราบคือไดเรกทอรีย่อยปลายทางจะถูกคัดลอกภายในตัวมันเองด้วย

อย่างที่คุณเห็น ทุกอย่างในไดเร็กทอรี Downloads รวมถึงไดเร็กทอรีย่อยจะอยู่ภายในไดเร็กทอรีย่อย

เช่นนั้น ถ้าคุณต้องการคัดลอกทั้งไดเร็กทอรีไปยังไดเร็กทอรีอื่น ให้ใช้พารามิเตอร์ -r ตัวอย่างเช่น ฉันจะคัดลอก ~/Downloads/ ไปยัง /Desktop/testDir1/

cp -vr~/ดาวน์โหลด/~/เดสก์ทอป/testDir1/

หวังว่าประสบการณ์การคัดลอกของคุณกับ Linux จะดีขึ้นเพียงพอ สนุก!