Vì vậy, tôi đã tự hỏi làm thế nào để chạy hai dòng mã này mỗi khi tôi đóng một phiên bản mở của Terminal:
history -c
cat /dev/null > ~/.bash_history
Tôi đã export HISTFILE=5
khởi động, nhưng vẫn muốn tuôn ra điều đó khi tôi hoàn thành.
Tôi đã thử nhìn xung quanh một chút ở một vài nơi và không gặp nhiều may mắn .
Tôi chạy Linux Mint và cũng lưu ý rằng tôi gặp phải một vấn đề tương tự .bash_profile
; cuối cùng, tôi phát hiện ra rằng tôi cần đặt tất cả mã khởi động vào .bashrc
, vì vậy có lẽ điều đó có liên quan đến nó. Đây là .bash_logout
tập tin của tôi :
#!/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
Tôi đã thử sắp xếp lại kịch bản này theo nhiều cách, tôi không chắc là mình không hiểu cách thức hoạt động của bash hay không, và liệu bất kỳ thứ nào trong số này đang chạy ở nơi đầu tiên. Có phải thực tế là tôi chạy Xserver
làm bash xem xét Terminal một cái gì đó không phải là đăng xuất khi thoát?
Nó nói rằng tôi không đăng nhập, điều này sẽ có ý nghĩa:
$> shopt login_shell
login_shell off
shopt login_shell
nói gì
echo
lệnh khi bắt đầu, trước khi nó làm bất cứ điều gì khác có thể can thiệp vàoecho
việc chạy. Một lỗi có thể khiến tập lệnh thoát ra trước khi nó kết thúc.