วิธีคัดลอกไดเรกทอรี (โฟลเดอร์และเนื้อหา) ไปยังไดเรกทอรีอื่นได้อย่างไร


2

นี่คือโครงสร้างไฟล์ของฉัน:

- someDirA
  -  folderOne
  -  folderTwo
     - somefile.txt
     - someotherfile.txt

- someDirB
  -  somefolder

สิ่งที่ฉันต้องการ 'someDirB' จะมีลักษณะ:

- someDirB
  - somefolder
  - folderTwo
    - somefile.txt
    - someotherfile.txt

ฉันแค่ต้องการคัดลอก folderDirA ของสองDir (โฟลเดอร์และเนื้อหาทั้งหมด) ลงใน someDirB ไดเรกทอรีทั้งสองอยู่ในเส้นทางที่แยกจากกัน


1
คุณอาจพบว่า cp -a มีประโยชน์ตามที่จะเพิ่ม -r ตัวเลือกพิเศษเพื่อรักษาแอตทริบิวต์ของไฟล์ในไฟล์ที่คัดลอก ด้วย cp -ua จะคัดลอกเฉพาะไฟล์ที่อัปเดตหากคุณต้องการคัดลอกซ้ำ
AFH

คำตอบ:


6

cp -r /path/to/someDirA/folderTwo /path/to/someDirB/

-r ตัวเลือกที่จะ cp บอกให้ recurse ในไดเรกทอรีคัดลอกเนื้อหา


เห็นว่าเป็นปัญหาฉันโฟลเดอร์ที่ฉันกำลังคัดลอกไม่ได้อยู่ในไดเรกทอรีเดียวกับโฟลเดอร์ที่ฉันพยายามที่จะคัดลอกเช่นกัน ทั้ง someDirA / folderTwo และ someDirB อยู่ในเส้นทางแยกกัน ... เช่นเดียวกับที่ฉันโพสต์ด้านบน ..
dave

@ บันทึกแล้วเพียงระบุเส้นทางไปยังไดเรกทอรี ... ฉันจะอัปเดตคำตอบของฉัน
ethanwu10

k ขอบคุณที่ฉันกำลังมองหา
dave

4

คุณสามารถใช้ได้ cp เพื่อคัดลอกไฟล์และไดเรกทอรี:

cp -r /path/to/someDirA/folderTwo /path/to/someDirB

-r ตัวเลือกที่จำเป็นเมื่อคัดลอกไดเรกทอรี

หรือคุณสามารถใช้ rsync:

rsync -a  /path/to/someDirA/folderTwo /path/to/someDirB

สิ่งที่ฉันกำลังมองหาขอบคุณ
dave

ถ้าเป็นการโยนให้ทำเครื่องหมายคำตอบให้กับ ethanwu10: เขาเร็วกว่าฉัน 30 วินาที
John1024

0

การทำให้เข้าใจง่ายสำหรับ rsync:

rsync -r someDirA/ someDirB

หมายเหตุมีเครื่องหมายทับ (/) ที่ท้ายอาร์กิวเมนต์แรก จำเป็นต้องหมายถึง "เนื้อหาของ someDirA "

แก้ไข:

rsync -r --exclude 'folderOne' someDirA/ someDirB 

ต้องการ OP เท่านั้น folderTwo คัดลอก สิ่งนี้จะคัดลอก folderOne.
John1024
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.