Saya ingin menghapus semua perintah sebelumnya dari riwayat server saya. Saya menggunakan history -c dan sepertinya semua hal dihapus tetapi ketika saya ssh ke server, semua perintah masih ada.
Bagaimana Saya bisa menghapusnya secara permanen?
Saya ingin menghapus semua perintah sebelumnya dari riwayat server saya. Saya menggunakan history -c dan sepertinya semua hal dihapus tetapi ketika saya ssh ke server, semua perintah masih ada.
Bagaimana Saya bisa menghapusnya secara permanen?
Berkas ~/.bash_history memegang sejarah.
Untuk menghapus riwayat bash sepenuhnya di server, Buka terminal dan ketik
cat /dev/null > ~/.bash_historyCara alternatif lainnya adalah dengan menghubungkan ~/.bash_history untuk /dev/null
Salah satu efek samping yang mengganggu adalah bahwa entri sejarah memiliki salin dalam memori dan itu akan siram kembali ke file ketika Anda log out.
Untuk solusi ini, gunakan perintah berikut (bekerja untuk saya):
cat /dev/null > ~/.bash_history && history -c && exit
Apa yang harus dilakukan:
Di setiap buka bash shell (Anda mungkin memiliki beberapa terminal terbuka):
history -chistory -wMengapa: seperti disebutkan di atas, history -c mengosongkan berkas ~/.bash_history. Penting untuk dicatat bahwa bash shell tidak segera menghapus riwayat ke file bash_history. Jadi, penting untuk (1) flush sejarah ke file, dan (2) menghapus sejarah, di semua terminal. Itulah yang dilakukan perintah di atas.
jalankan perintah berikut untuk menghapus riwayat selamanya
history -c && history -wsemoga berhasil!
Ada satu lagi yang lebih sederhana: menjalankan history -c pada prompt terminal dan pergi semua entri dalam bash_history file.
Cara lain untuk melakukan ini adalah menghapus ~/.bash_history file dengan menggunakan rm ~/.bash_history perintah. Ketika Anda login lain waktu, yang .bash_history file akan dibuat secara otomatis.
Hapus riwayat shell saat ini:
history -cSaat Anda keluar, Riwayat shell Anda saat ini ditambahkan ke ~/.bash_history, yang merupakan cache dari riwayat shell sebelumnya, ke jumlah maksimum (lihat HISTFILESIZE di "MAN bash").
Jika Anda ingin menghapus riwayat sama sekali, maka pada dasarnya Anda harus mengosongkan ~/.bash_history yang disarankan oleh banyak entri di atas. Seperti:
history -c && history -wIni membersihkan riwayat shell saat ini dan kemudian memaksa Riwayat shell saat ini (kosong) untuk menimpa ~/.bash_history....atau untuk lebih akurat, itu memaksanya untuk menimpa HISTFILE (yang defaultnya adalah ~/.bash_history).
Semoga ini bisa membantu.
rm ~/.bash_history; history -c; logoutSekarang masuk kembali dan saksikan bahwa panah Anda tidak memberi Anda apa-apa.
Coba yang ini
mengedit Anda .profile dan tambahkan baris di bawah ini di akhir file
rm -f .bash_historydengan cara ini, setiap kali Anda login, itu akan menghapus Anda .file bash_history secara otomatis untuk anda. Menambahkan opsi-R recursive remove tampaknya berbahaya dan tidak diperlukan.