ฉันพยายามที่จะยิงตัวเองในที่ที่เจ็บ (แย่มาก) โดยการฟอร์แมตพาร์ติชันที่เก็บข้อมูลที่มีค่า แน่นอนมันไม่ได้ตั้งใจ แต่มันเกิดขึ้น
อย่างไรก็ตามฉันจัดการเพื่อใช้testdisk
และphotorec
กู้คืนข้อมูลส่วนใหญ่ ตอนนี้ฉันมีข้อมูลทั้งหมดที่แจกจ่ายไปแล้วกว่า 25,000 ไดเรกทอรี ไฟล์ส่วนใหญ่เป็นไฟล์. txt ส่วนที่เหลือเป็นไฟล์รูปภาพ มีไฟล์. txt มากกว่า 300 ไฟล์ในแต่ละไดเรกทอรี
ฉันสามารถgrep
หรือใช้find
เพื่อแยกสตริงจากไฟล์. txt และส่งออกไปยังไฟล์ ตัวอย่างเช่นต่อไปนี้เป็นบรรทัดที่ฉันใช้ตรวจสอบว่าข้อมูลของฉันอยู่ในไฟล์ที่กู้คืนแล้ว:
find ./recup*/ -name '*.txt' -print | xargs grep -i "searchPattern"
ฉันสามารถเอาท์พุท "searchPattern" ไปยังไฟล์ได้ แต่นั่นให้รูปแบบนั้น นี่คือสิ่งที่ฉันต้องการจะทำจริง:
ผ่านไฟล์ทั้งหมดและค้นหาสตริงเฉพาะ หากพบสตริงนั้นในไฟล์ให้จับเนื้อหาทั้งหมดของไฟล์นั้นไปยังไฟล์เอาต์พุต หากพบรูปแบบในไฟล์มากกว่าหนึ่งไฟล์ต่อท้ายเนื้อหาของไฟล์ที่ตามมาไปยังไฟล์เอาต์พุตนั้น โปรดทราบว่าฉันไม่ต้องการส่งออกรูปแบบที่ฉันค้นหา แต่เนื้อหาทั้งหมดของไฟล์ที่พบรูปแบบ
ฉันคิดว่ามันเป็นไปได้ แต่ฉันไม่รู้วิธีที่จะคว้าเนื้อหาทั้งหมดของไฟล์หลังจาก grepping รูปแบบเฉพาะจากมัน