เมื่อคุณเปิดเทอร์มินัล bash มันจะโหลดเนื้อหาของ~/.bash_history
และสร้างประวัติของเชลล์ที่ใช้งานอยู่ (ใน RAM) เพิ่มคำสั่งทุกคำสั่งที่ทำงานในเชลล์นั้นให้กับมันและเฉพาะกับมันไม่ใช่ไฟล์
เมื่อคุณปิดเทอร์มินัล bash เท่านั้นประวัติจะถูกผนวกเข้ากับ~/.bash_history
ไฟล์ของคุณ
ตัวเลือกของhistory
:
history -a # save the active shell's history to ~/.bash_history (appending)
history -c # clear the active shell's history
history -d NNN # delete row NNN of the active shell's history
history -r # reload the active shell's history from ~/.bash_history (appending)
history -w # save the active shell's history to ~/.bash_history (overwriting)
ตัวเลือกสำหรับ~/.bashrc
ไฟล์
หากคุณต้องการเปลี่ยนพฤติกรรมนี้เพื่อให้บันทึกประวัติชั่วคราวเป็น~/.bash_history
โดยตรงหลังจากดำเนินการคำสั่งให้เพิ่มบรรทัดนี้:
PROMPT_COMMAND="history -a"
หากคุณต้องการให้ทุกเทอร์มินัลโหลด~/.bash_history
ไฟล์โดยอัตโนมัติหลังจากดำเนินการคำสั่งทุกครั้งให้เพิ่มบรรทัดนี้แทน:
PROMPT_COMMAND="history -a; history -c; history -r"
หากคุณต้องการยกเว้นคำสั่งบางอย่าง (เช่นทุกอย่างที่ขึ้นต้นด้วยsudo
และcat
) ไม่ให้บันทึกให้เพิ่มบรรทัดนี้:
HISTIGNORE="sudo*:cat*"