สมมติว่าฉันมีไฟล์ข้อความที่มีรายการชื่อไฟล์ที่ส่งออก (เช่น ไฟล์ที่สร้างขึ้นนานเกินไปหรือมีขนาดใหญ่เกินไป) รายการค่อนข้างใหญ่ (100k+ ไฟล์)ฉันไม่มีสิทธิ์เข้าถึงระบบไฟล์โดยตรงไปยังไฟล์ (เช่น ไฟล์อยู่ในคลัสเตอร์) รายการตัวอย่างจะเป็น:
/cluster/team-1/file001
/cluster/team-1/file002
/cluster/team-1/file003
/cluster/team-2/subteam-A/dump
/cluster/team-2/subteam-B/exportlist.txt
/cluster/team-3/2021/11/05/dump
/cluster/team-3/2021/11/04/dump
/cluster/team-3/2021/10/30/dump
/cluster/team-3/2021/09/30/dump
/cluster/team-4/project-foo/x
/cluster/team-4/project-foo/y
/cluster/team-4/project-foo/z
/cluster/team-4/project-bar/i
/cluster/team-4/project-bar/j
/cluster/team-4/project-bar/k
ฉันต้องการสร้างรายการคำนำหน้าที่สร้างการจัดกลุ่มเชิงตรรกะของไฟล์เหล่านั้น ดูเหมือนจะมีโครงสร้างบางอย่างในต้นไม้นั้น แต่อาจไม่มีอะไรที่สามารถเป็นอัตโนมัติได้ จากตัวอย่างข้างต้น การจัดกลุ่มจะเป็น
/คลัสเตอร์/ทีม-1/*
/คลัสเตอร์/ทีม-2/ทีมย่อย-A/*
/cluster/team-2/subteam-B/*
/คลัสเตอร์/ทีม-3/*
/cluster/team-4/project-foo/*
/cluster/team-4/project-bar/*
ด้วยรายชื่อกลุ่มดังกล่าว ฉันจึงสามารถจัดการกับแต่ละกลุ่มแยกกันได้ (เช่น ตรวจสอบไฟล์เหล่านั้นหรือติดต่อทีมที่เป็นเจ้าของไฟล์เหล่านั้น)
คุณจะใช้เครื่องมือใดในการสร้างแผนที่ดังกล่าว
สิ่งที่ฉันได้ลองไปแล้ว:
- เสียงเรียกเข้า -- ต้องใช้มาโคร/การค้นหาเฉพาะกิจจำนวนมากเพื่อลบไฟล์ที่อยู่ในกลุ่มเดียวกัน สามารถทำงานได้ แต่ไม่รู้สึกว่าเป็นเครื่องมือที่เหมาะสม
- ฟซฟ -- fzf อนุญาตให้เลือกไฟล์/ไดเร็กทอรีหลายไฟล์ที่จะพิมพ์ออกไปยังเอาต์พุต มีการค้นหาแบบคลุมเครือ เหมาะสำหรับการค้นหาบางอย่างมากกว่าการเลือกการจัดกลุ่ม
- ราก -- เหมาะสำหรับการสำรวจโครงสร้างต้นไม้ อย่างไรก็ตาม ไม่อนุญาตให้อ่านรายการจากไฟล์ข้อความแทนที่จะเป็นระบบไฟล์
ตามหลักการแล้วจะมีเครื่องมือที่คล้ายกับการเลือกการกระทำแบบโต้ตอบของ Mercurial:
คุณสามารถเลือกได้ทั้งไฟล์ กลุ่ม หรือแต่ละบรรทัด เครื่องมือนี้สามารถช่วยเลือกไดเร็กทอรีซึ่งจะกลายเป็นการจัดกลุ่ม