ฉันตั้งใจคัดลอกเนื้อหาทั้งหมดของไดเรกทอรีไปยังไดเรกทอรีปลายทางแทนที่จะย้ายไดเรกทอรีเต็ม สิ่งนี้ส่งผลให้มีไดเร็กทอรีปลายทางที่ยุ่งเหยิงแทนที่จะเป็นไดเร็กทอรีต้นทางที่ถูกเพิ่มเข้ากับไดเร็กทอรี
ในการแก้ไขปัญหานี้ฉันได้ทำสิ่งต่อไปนี้:
ls -rt /path/to/cluttered/destination/directory/ > /opt/dircheck/filestomove
คำสั่งดังกล่าวจะสร้างไฟล์ filestomove ที่จะเป็นรายการเนื้อหาทั้งหมดของไดเรกทอรีปลายทางย้อนกลับเรียงตามเวลาหมายถึงเก่าที่สุดถึงใหม่ที่สุด
จากนั้นฉันสร้างไดเรกทอรีย่อยของไดเรกทอรีปลายทางที่ยุ่งเหยิงในขณะนี้เพื่อย้ายข้อมูลไปไว้
mkdir /path/to/cluttered/destination/directory/newsubdirectory
จากนั้นฉันทำซ้ำรายการไดเรกทอรียกเว้นรายชื่อไปที่หน้าจอและแสดงรายละเอียดเพิ่มเติม
ls -lrht /path/to/cluttered/destination/directory/
บรรทัดนี้แสดงรายการไดเรกทอรีเรียงตามวันที่จากน้อยไปมาก (เรียงลำดับย้อนกลับตามเวลา) และแสดงข้อมูลเพิ่มเติมรวมถึงการประทับวันที่ / เวลาของแต่ละไฟล์ในไดเรกทอรีปลายทางที่รกในขณะนี้ ฉันอ้างถึงสิ่งนี้เริ่มต้นที่ด้านบนเพื่อแสดงสิ่งที่ไดเรกทอรีและไฟล์ที่ฉันต้องการให้พวกเขาอยู่ที่ไหน จะมีช่องว่างในการประทับวันที่ / เวลาของไฟล์ที่ไฟล์ใหม่ทั้งหมดเริ่มต้นซึ่งไม่ควรมี
จากนั้นฉันจะแก้ไขไฟล์ filestomove ที่สร้างขึ้นในขั้นตอนแรกข้างต้น (ซึ่งจัดเรียงตามวันที่) และลบบางส่วนออกจากรายการที่มีก่อนหน้านี้ที่ฉันต้องการอยู่จากไดเรกทอรีเดิม
vim /opt/dircheck/filestomove
ลบจากด้านบนไฟล์ทั้งหมดที่คุณไม่ต้องการย้าย
จากนั้นฉันก็ใช้คำสั่งที่ระบุไว้ก่อนหน้าในโพสต์นี้เพื่อย้ายไฟล์ในรายการของฉันไปยังไดเรกทอรีใหม่ที่ฉันทำ
sudo xargs -a /opt/dircheck/filestomove mv -t /path/to/cluttered/destination/directory/newsubdirectory
สิ่งนี้ย้ายไฟล์ทั้งหมดในเสี้ยววินาที (หมายเหตุ: คุณอาจไม่จำเป็นต้องใช้ sudo ในตอนแรกนี่เป็นเรื่องของการอนุญาตไฟล์)
ตอนนี้ไดเรกทอรีปลายทางดั้งเดิมของฉันนั้นดีและสะอาดและมีไดเรกทอรีใหม่ที่มีไฟล์และไดเรกทอรีทั้งหมดที่รกอยู่