वर्षों में कई बड़े, बदसूरत पुनरावृत्तियों और अजीब बढ़त के मामलों के बाद, अब मेरे पास अपने .bashrc का एक संक्षिप्त खंड है जो इसे समर्पित है।
सबसे पहले, आपको अपने .bashrc (Ubuntu के लिए डिफ़ॉल्ट) के इस अनुभाग को टिप्पणी या हटाना होगा । यदि आप नहीं करते हैं, तो कुछ वातावरण (जैसे screen
सत्र चलाना ) अभी भी आपके इतिहास को तोड़ देगा:
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
# HISTSIZE=1000
# HISTFILESIZE=2000
दूसरा, इसे अपने .bashrc के नीचे जोड़ें :
# Eternal bash history.
# ---------------------
# Undocumented feature which sets the size to "unlimited".
# http://stackoverflow.com/questions/9457233/unlimited-bash-history
export HISTFILESIZE=
export HISTSIZE=
export HISTTIMEFORMAT="[%F %T] "
# Change the file location because certain bash sessions truncate .bash_history file upon close.
# http://superuser.com/questions/575479/bash-history-truncated-to-500-lines-on-each-login
export HISTFILE=~/.bash_eternal_history
# Force prompt to write history after every command.
# http://superuser.com/questions/20900/bash-history-loss
PROMPT_COMMAND="history -a; $PROMPT_COMMAND"
नोट: प्रत्येक कमांड को चलाने के तुरंत बाद लिखा जाता है, इसलिए यदि आप गलती से एक पासवर्ड पेस्ट करते हैं, तो आप इतिहास लिखने से बचने के लिए सिर्फ "किल -9 %%" नहीं कर सकते, आपको इसे मैन्युअल रूप से निकालना होगा।
यह भी ध्यान दें कि प्रत्येक बैश सत्र पूर्ण इतिहास फ़ाइल को मेमोरी में लोड करेगा, लेकिन भले ही आपकी इतिहास फ़ाइल 10MB तक बढ़ जाए (जिसमें लंबा, लंबा समय लगेगा) आप अपने बैश स्टार्टअप समय पर बहुत अधिक प्रभाव नहीं देखेंगे।