ดังนั้นฉันจึงสงสัยว่าจะรันโค้ดสองบรรทัดนี้ได้อย่างไรทุกครั้งที่ฉันปิดอินสแตนซ์เปิดของ Terminal:
history -c
cat /dev/null > ~/.bash_history
ฉันexport HISTFILE=5
เริ่มต้น แต่ก็ยังต้องการล้างออกเมื่อฉันทำเสร็จแล้ว
ฉันพยายามมองไปรอบ ๆในสถานที่สองแห่งและไม่ได้มีโชคมาก
ฉันใช้ Linux Mint และจะทราบได้ที่นี่ว่าฉันพบปัญหาที่คล้ายกันด้วย.bash_profile
; ในที่สุดฉันก็ค้นพบว่าฉันต้องวางโค้ดเริ่มต้นไว้ทั้งหมด.bashrc
ดังนั้นอาจมีบางอย่างที่เกี่ยวข้องกับมัน นี่คือ.bash_logout
ไฟล์ของฉัน:
#!/bin/bash
# ~/.bash_logout: executed by bash(1) when login shell exits.
#this does nothing on exit...
echo 'logout'; sleep 2s
# when leaving the console clear the screen to increase privacy
if [ "$SHLVL" = 1 ]; then
history -c
cat /dev/null > ~/.bash_history
[ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
fi
ฉันพยายามจัดเรียงสคริปต์นี้ใหม่หลายวิธีฉันไม่แน่ใจว่าฉันไม่เข้าใจวิธีทุบตีทำงานอย่างไรและหากมีสิ่งใดเกิดขึ้นในตอนแรก ความจริงที่ว่าฉันรันXserver
ทุบตีพิจารณาเทอร์มินัลสิ่งที่ไม่ใช่ออกจากระบบเมื่อออกหรือไม่
มันบอกว่าฉันไม่ได้เข้าสู่ระบบซึ่งจะทำให้รู้สึก:
$> shopt login_shell
login_shell off
shopt login_shell
พูด?
echo
คำสั่งเมื่อเริ่มต้นก่อนที่จะทำสิ่งอื่นใดที่อาจรบกวนecho
การเรียกใช้ ข้อผิดพลาดอาจทำให้สคริปต์ออกก่อนที่จะถึงจุดสิ้นสุด