คำตอบสั้น ๆ : echo 'set history save on' >> ~/.gdbinit && chmod 600 ~/.gdbinit
คำตอบยาว:
ประวัติคำสั่งได้รับการคุ้มครองในคู่มือ GDB 22.3 ประวัติคำสั่ง สร้างไฟล์$HOME/.gdbinit
เปลี่ยนการอนุญาตเป็น0600
และเพิ่มเนื้อหาต่อไปนี้:
set history save on
คุณสามารถตั้งค่าจำนวนคำสั่งที่ผ่านมาที่บันทึกไว้ด้วยต่อไปนี้ คำสั่งอธิบายว่า"ตั้งค่าจำนวนคำสั่งที่ gdb เก็บไว้ในรายการประวัติค่าดีฟอลต์นี้คือค่าของตัวแปรสภาวะแวดล้อม GDBHISTSIZE หรือเป็น 256 หากไม่ได้ตั้งค่าตัวแปรนี้ค่าที่ไม่ใช่ตัวเลขของ GDBHISTSIZE จะถูกละเว้นหาก ขนาดไม่ จำกัด หรือถ้า GDBHISTSIZE เป็นทั้งจำนวนลบหรือสตริงว่างแล้วจำนวนคำสั่ง gdb ช่วยในรายการประวัติไม่ จำกัด"
set history size <size>
set history remove-duplicates <count>
คำสั่งที่เกี่ยวข้อง คำสั่งอธิบายว่า"ควบคุมการลบรายการประวัติที่ซ้ำกันในรายการประวัติคำสั่งหากการนับไม่ใช่ศูนย์ gdb จะมองย้อนกลับไปที่รายการประวัติการนับล่าสุดและลบรายการแรกที่ซ้ำกันของรายการปัจจุบัน เพิ่มลงในรายการประวัติคำสั่ง. ถ้านับไม่ จำกัด แล้ว lookbehind นี้อยู่มากมาย. ถ้านับเป็น 0 แล้วการกำจัดของรายการประวัติซ้ำเป็นคนพิการ"
set history remove-duplicates <count>
โดยค่าเริ่มต้น gdb บันทึกประวัติการเข้าสู่ ./.gdb_history ไฟล์ในไดเรกทอรีปัจจุบัน หากคุณต้องการให้ประวัติคำสั่งไม่ขึ้นอยู่กับไดเรกทอรีที่คุณใช้ให้รวมถึง:
set history filename ~/.gdb_history
.gdbinit
ไฟล์จะต้องมีการป้องกันการเขียนโดยผู้อื่นที่ไม่ใช่คุณบน linux