Случайно получены .bash_history


33

В момент блеска я выполнил команду source ~/.bash_history. К счастью, большинство команд используют vimдля редактирования какого-либо файла, но в моей истории есть несколько страшных команд - перемещение и удаление файлов с относительными путями.

К счастью, сейчас он застрял в vimсеансе, однако, если я приостановлю или выйду из него, он перейдет к следующему. Файл истории имеет длину 1000 строк.

Как я могу отменить эту команду, кроме перезагрузки машины?


22
Это безумие! :)

7
безумие? Это Спарта! - подожди, извини.
Sirex

2
Я не одинок :)
Алупота

Ответы:


28

Если это локальный компьютер, запустите новый терминал и уничтожьте соответствующую оболочку.

Если это удаленный компьютер, зайдите в ssh и уничтожьте соответствующую оболочку.


15

Вы можете нажать Ctrl+ Zили запустить подоболочку :!bash, а затем убить оболочку. Конкретные шаги:

Ctrl+Z
kill -9 $$

:suspend(или их приемлемые сокращения) могут функционировать эквивалентно Ctrl+ Z.


6
Но если вы :!bash, то $$будете ссылаться на подоболочку, которую вы только что создали. Вам нужно использовать, psчтобы узнать PID. ... PS Я полагаю, это в некоторой степени вопрос стиля, но если нет необходимости заниматься модными вещами, я бы использовал просто :!sh. Кроме того, в этом отношении, попробуйте :sh.
Скотт

1
Пониженное голосование, потому что, как отмечается в комментарии, это может дать кому-то достаточно ложной уверенности, чтобы выйти из vim и подключить свою машину.
Парфянский выстрел
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.