rsync -- ลบ
@sudodus เพื่อที่จะใช้ --delete ฉันต้องลบไฟล์ต้นฉบับออกจากไดเร็กทอรีดั้งเดิมหรือไม่
ใช่แต่ฉันจะบอกว่าความตั้งใจนั้นตรงกันข้าม: มันจะช่วยให้คุณลบไฟล์ในเป้าหมาย เมื่อคุณลบไฟล์ที่เกี่ยวข้องในต้นทางแล้ว
หากคุณต้องการหลีกเลี่ยงการคัดลอกไฟล์บางไฟล์ (แต่เก็บไว้ในแหล่งที่มา) คุณสามารถใช้ --ไม่รวม
.
รีซิงค์
ไม่ใช่เครื่องมือลบทั่วไป เป็นเครื่องมือคัดลอกเพื่อคัดลอก/อัปเดตแผนผังไดเร็กทอรีเป้าหมายด้วยไฟล์ใหม่หรือไฟล์ที่อัปเดตในแผนผังไดเร็กทอรีต้นทางที่เกี่ยวข้อง เดอะ --ลบ
ตัวเลือกคือ 'เท่านั้น' เพื่อซิงโครไนซ์ นั่นคือการลบไฟล์ในเป้าหมาย หากไฟล์ที่เกี่ยวข้องในต้นทางถูกลบไปแล้ว
ดูคำอธิบายโดยละเอียดในคู่มือ ผู้ชาย rsync
--delete ลบไฟล์ที่ไม่เกี่ยวข้องออกจาก dest dirs
--delete-before receiver ลบก่อน xfer ไม่ใช่ระหว่าง
--delete-during ผู้รับ ลบระหว่างการถ่ายโอน
--delete-delay ค้นหาการลบระหว่าง ลบหลัง
--delete-after receiver ลบหลังจากการโอน ไม่ใช่ระหว่าง
--delete-excluded ยังลบไฟล์ที่แยกออกจาก dest dirs
--ignore-missing-args ละเว้น args ที่มาที่ขาดหายไปโดยไม่มีข้อผิดพลาด
--delete-missing-args ลบ args ต้นทางที่ขาดหายไปจากปลายทาง
--ลบ
สิ่งนี้บอกให้ rsync ลบไฟล์ที่ไม่เกี่ยวข้องออกจากการรับ
ฝั่ง (ที่ไม่ใช่ฝั่งส่ง) แต่สำหรับฝั่งนั้นเท่านั้น
ไดเร็กทอรีที่กำลังซิงโครไนซ์ คุณต้องถามแล้ว
rsync เพื่อส่งไดเร็กทอรีทั้งหมด (เช่น "dir" หรือ "dir/") โดยไม่ต้อง
การใช้ไวด์การ์ดสำหรับเนื้อหาของไดเร็กทอรี (เช่น "dir/*")
เนื่องจากไวด์การ์ดถูกขยายโดยเชลล์และ rsync จึงได้รับ
คำขอโอนแต่ละไฟล์ ไม่ใช่ไฟล์หลัก
ไดเรกทอรี ไฟล์ที่ไม่รวมอยู่ในการถ่ายโอนก็เช่นกัน
ยกเว้นจากการถูกลบ เว้นแต่คุณจะใช้ --delete-excluded
ตัวเลือกหรือทำเครื่องหมายกฎว่าตรงกับด้านการส่งเท่านั้น
(ดูตัวแก้ไขรวม/ไม่รวมในส่วนกฎตัวกรอง)
ก่อน rsync 2.6.7 ตัวเลือกนี้จะไม่มีผลเว้นแต่
--recursive ถูกเปิดใช้งาน เริ่มตั้งแต่ 2.6.7 การลบจะ
ยังเกิดขึ้นเมื่อเปิดใช้งาน --dirs (-d) แต่สำหรับไดเร็กทอรีเท่านั้น
ที่มีการคัดลอกเนื้อหา
ตัวเลือกนี้อาจเป็นอันตรายได้หากใช้ไม่ถูกต้อง! มันเป็นมาก
เป็นความคิดที่ดีที่จะลองรันโดยใช้ตัวเลือก --dry-run (-n) เป็น
ดูว่าไฟล์ใดที่จะถูกลบ
หากฝ่ายส่งตรวจพบข้อผิดพลาด I/O แสดงว่าทำการลบ
ไฟล์ใดๆ ที่ปลายทางจะถูกปิดโดยอัตโนมัติ
นี่คือการป้องกันความล้มเหลวของระบบไฟล์ชั่วคราว (เช่น NFS
ข้อผิดพลาด) ที่ฝั่งส่งจากการทำให้เกิดการลบจำนวนมาก
ไฟล์ที่ปลายทาง คุณสามารถลบล้างสิ่งนี้ด้วย
--ignore-ข้อผิดพลาดตัวเลือก
ตัวเลือก --delete อาจรวมกับตัวเลือกใดตัวเลือกหนึ่ง
--delete-WHEN ตัวเลือกที่ไม่มีข้อขัดแย้งเช่นเดียวกับ
--ลบ-ไม่รวม อย่างไรก็ตามหากไม่มี --delete-WHEN
มีการระบุตัวเลือก rsync จะเลือก --delete-during
อัลกอริทึมเมื่อพูดคุยกับ rsync 3.0.0 หรือใหม่กว่า และ
--delete-before อัลกอริทึมเมื่อพูดคุยกับ rsync ที่เก่ากว่า ดู
ยัง --delete-delay และ --delete-after
rm
'remove' เป็นเครื่องมือ Linux มาตรฐานในการลบ alias ลบไฟล์
สอดคล้องกับภาพหน้าจอของคุณ คุณสามารถลอง
rm /tmp/backup/foto3.txt
หรือมีด่านเพื่อยืนยัน
rm -i /tmp/backup/foto3.txt