Ketika secara tidak sengaja menempelkan file ke dalam shell itu menempatkan satu ton entri omong kosong jelek dalam sejarah bash. Apakah ada cara bersih untuk menghapus entri-entri itu? Jelas saya bisa menutup shell dan mengedit .bash_history
file secara manual tetapi mungkin ada beberapa jenis API yang tersedia untuk mengubah sejarah shell saat ini?
sumber
tot_lines=$(history | wc -l)
dan kemudian ulangihistory -d $(( tot_lines - $1 ))
.$(history | wc -l)
, ada variabel$HISTCMD
yang bisa digunakan.Hanya liner yang satu ini di command prompt akan membantu.
Tempat START_NUM memulai posisi entri dalam riwayat. N adalah jumlah entri yang ingin Anda hapus.
ex:
for i in {1..50}; do history -d 1030; done
sumber
Jawaban oleh user2982704 hampir berhasil untuk saya tetapi tidak cukup. Saya harus membuat variasi kecil seperti ini.
Dengan asumsi riwayat saya adalah 1000 dan saya ingin menghapus 50 entri terakhir
sumber