मैं bash
को मेरे इतिहास में डुप्लिकेट कमांड सहेजने से रोकने की कोशिश कर रहा हूं। यहाँ मैं क्या कर लिया है:बैश इतिहास में डुप्लिकेट को सहेजने से रोकें
shopt -s histappend
export HISTIGNORE='&:ls:cd ~:cd ..:[bf]g:exit:h:history'
export HISTCONTROL=erasedups
export PROMPT_COMMAND='history -a'
यह ठीक काम करता है, जबकि मैं में लॉग इन कर रहा हूँ और .bash_history
स्मृति में है। उदाहरण के लिए:
$ history
1 vi .bashrc
2 vi .alias
3 cd /cygdrive
4 cd ~jplemme
5 vi .bashrc
6 vi .alias
$ vi .bashrc
$ history
1 vi .alias
2 cd /cygdrive
3 cd ~jplemme
4 vi .alias
5 vi .bashrc
$ vi .alias
$ history
1 cd /cygdrive
2 cd ~jplemme
3 vi .bashrc
4 vi .alias
$ exit
लेकिन जब मैं वापस में प्रवेश करें, अपने इतिहास फ़ाइल इस तरह दिखता है:
$ history
1 vi .bashrc
2 vi .alias
3 cd /cygdrive
4 cd ~jplemme
5 vi .bashrc
6 vi .alias
7 vi .bashrc
8 vi .alias
क्या मैं गलत कर रहा हूँ?
संपादित करें: और PROMPT_COMMAND
.bashrc
से लाइनों को समस्या को ठीक नहीं करता है।
क्या आपने कभी इसे हल किया है? मेरा/etc/प्रोफ़ाइल इस तरह दिखता है (मैक पर) और मुझे एक ही समस्या है: # http://blog.macromates.com/2008/working-with-history-in-bash/ # http: //www.ducea.com/2006/05/15/linux-tips-take-control-of-your-bash_history/ निर्यात HISTCONTROL = erasedups निर्यात HISTSIZE = 10000 निर्यात HISTTIMEFORMAT = "% F-% टी% टी " shopt -s histappend (यह आधा सभ्य, नहीं आसान फ़ॉर्मेट करने के लिए कोशिश कर रहा है) – joedevon
इस सवाल http://unix.stackexchange.com/questions/48713/how-can-i-remove-duplicates देखें -इन-माय-बैश-इतिहास-संरक्षण-आदेश – Nathan
यह प्रोग्रामिंग में विशिष्ट समस्या है और विशिष्ट उपकरण प्रोग्रामर उपयोग से संबंधित है। मुझे रहस्य है कि इस प्रश्न को "ऑफ-विषय" माना जाएगा (कम से कम 5 लोगों द्वारा अधिक)। एक अनावश्यक .bash_history अब हल करने के लिए एक लंबी परेशानी है। हालांकि यह प्रश्न यूनिक्स स्टैकएक्सचेंज साइट पर ले जाया जा सकता है। –