Ketika saya mengetik perintah apa pun di terminal, itu tidak muncul di ~/.bash_history
file saya sampai saya keluar dari sesi saya.
Juga, ketika saya mengedit ~/.bash_history
file saya secara manual (misalnya saya menghapus tiga perintah terakhir), ketika saya mengetiknya history
masih menunjukkan perintah yang saya hapus dari ~/.bash_history
file. Hanya ketika saya keluar dari sesi saya dan login lagi mereka menghilang.
Bagaimana ~/.bash_history
file dan history
perintah saya disinkronkan?
command-line
bash
bash-history
sys0dm1n
sumber
sumber
Jawaban:
Ketika Anda membuka terminal bash, ia memuat konten
~/.bash_history
dan membangun sejarah shell aktif (dalam RAM), menambahkan setiap perintah yang dieksekusi di shell itu ke dalamnya - dan hanya untuk itu, bukan ke file.Hanya ketika Anda menutup terminal bash, riwayatnya ditambahkan ke
~/.bash_history
file Anda .Pilihan dari
history
:Opsi untuk
~/.bashrc
fileJika Anda ingin mengubah perilaku ini sehingga riwayat sementara disimpan
~/.bash_history
secara langsung setelah menjalankan perintah, tambahkan baris ini:Jika Anda juga ingin setiap terminal memuat
~/.bash_history
file secara otomatis setelah setiap eksekusi perintah, tambahkan baris ini sebagai gantinya:Jika Anda ingin mengecualikan perintah tertentu (mis. Semuanya dimulai dengan
sudo
dancat
) agar tidak disimpan, tambahkan baris ini:sumber