Podczas przypadkowego wklejenia pliku do powłoki umieszcza mnóstwo brzydkich bzdur w historii bash. Czy istnieje czysty sposób na usunięcie tych wpisów? Oczywiście mogę zamknąć powłokę i edytować .bash_history
plik ręcznie, ale może istnieje jakiś interfejs API do modyfikacji historii bieżącej powłoki?
źródło
tot_lines=$(history | wc -l)
a następnie powtórzhistory -d $(( tot_lines - $1 ))
.$(history | wc -l)
istnieje zmienna,$HISTCMD
której można użyć.Tylko ta jedna linijka w wierszu polecenia pomoże.
Gdzie START_NUM jest początkową pozycją wpisu w historii. N to liczba pozycji, które możesz chcieć usunąć.
dawny:
for i in {1..50}; do history -d 1030; done
źródło
Odpowiedź od user2982704 prawie dla mnie zadziałała, ale nie do końca. Musiałem dokonać takiej małej zmiany.
Zakładając, że moja historia to 1000 i chcę usunąć 50 ostatnich wpisów
źródło