Ketika saya me-restart Mac saya berhenti dan menyimpan buffer untuk setiap tab dengan benar, karena itu ada lagi ketika komputer mulai kembali. Tetapi sejarah perintah tidak buffered dengan benar per jendela / tab. Mereka semua buffer yang sama.
Saya berasumsi itu karena bash menggunakan hal yang sama ~/.bash_history
untuk semua terminal tetapi apakah ada cara untuk menghindari peningkatan ini? Untuk membuat bash, atau mungkin Terminal, simpan secara terpisah?
Jawaban:
Anda dapat melakukan sesuatu seperti ini di
.bashrc
:Ini akan membuat file histori terpisah di direktori home Anda seperti
.bash_history_ttys002
. Saat Anda membuat jendela terminal baru, itu akan menggunakan file riwayat yang sesuai dengan nama tty, yang biasanya akan ditentukan hanya dengan urutan di mana Anda membuat jendela terminal.sumber
Saya menerapkan ini dengan menambahkan
ke
~/.bash_profile
file saya . Sekarang ketika saya menutup terminal dan membukanya lagi, setiap tab memiliki sejarah perintah terpisah yang dipulihkan. Juga ketika saya membuat tab baru, riwayat bawaan diinisialisasi dari.bash_history
Juga untuk membuat
Terminal
aplikasi untuk menjaga tab yang dibuka antara berhenti dan mulai ulang, Anda perlu memastikan bahwa opsi"close windows when quitting app" (on Yosemite)
ini dinonaktifkanSystem Preferences -> General
.sumber
Anda dapat menetapkan $ HISTFILE khusus untuk masing-masing instance Terminal Anda.
sumber
$HISTFILE
ketika komputer mulai kembali?