Apakah ada ukuran maksimum untuk file bash history?


Jawaban:


15

Alih-alih menentukan angka, Anda bisa melakukannya

unset HISTSIZE 
unset HISTFILESIZE
shopt -s histappend

dalam hal ini hanya ukuran disk Anda (dan "batas file terbesar" Anda, jika OS atau FS Anda memilikinya) adalah batasnya.

Namun, ketahuilah bahwa ini pada akhirnya akan memperlambat bash semakin banyak. lihat dokumen BashFAQ ini dan artikel administrasi-debian (tautan asli mati, lihat di cermin: archive.is dan archive.org ) untuk teknik yang skalanya lebih baik.


Anda mungkin juga harus meningkatkan history-sizedi inputrc.
Chris Down

Peringatan: Seperti disebutkan [ unix.stackexchange.com/a/76129/78713)( di bawah) , ini dapat menyebabkan Bash mewarisi default dan, jika yang ada .bash_historylebih besar dari itu, untuk memotongnya.
Chris Povirk

8

Anda dapat menggunakan logrotate untuk menyimpan entri lama. Ini memungkinkan Anda, misalnya, untuk menetapkan batas ukuran yang akan memicu pengarsipan. Ini biasanya dijalankan dari cronjob harian, tetapi Anda mungkin juga memohonnya dari .bash_logoutskrip Anda .


Sepertinya pendekatan yang paling berkelanjutan bagi saya, karena menghapus batas ukuran akan, pada akhirnya, memiliki dampak kinerja. Sementara saya tidak yakin saya akan mencapai treshold dalam waktu dekat, saya khawatir perlu waktu untuk mulai memperhatikan dampak seperti itu. Btw, pertimbangkan untuk menambah konfigurasi yang Anda atur, dan perintah bash logout optionnal untuk ditambahkan.
Balmipour

Tautannya rusak. Mungkin edit untuk mengarah ke tautan lain dengan info yang dimaksudkan sama?
Dr Beco

7

@ Philomath, mengesampingkan vars lingkungan itu tidak bekerja untuk saya sama sekali! Bagi saya, ini menyebabkan bash menggunakan inbuilt default-nya (tampaknya) memotong .bash_history menjadi sekitar 9KiB.

Apa yang berfungsi untuk saya adalah sebagai berikut di .bashrc saya:

export HISTSIZE=
export HISTFILESIZE=
shopt -s histappend
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.