Accidentalmente fuente .bash_history


34

En un momento de brillantez, ejecuté el comando source ~/.bash_history. Afortunadamente, la mayoría de los comandos se utilizan vimpara editar algún archivo, pero hay algunos comandos de miedo en mi historial: mover y eliminar archivos con rutas relativas.

Afortunadamente en este momento está atascado en una vimsesión, sin embargo, si lo suspendo o lo dejo, pasará a la siguiente. El archivo histórico tiene 1000 líneas de largo.

¿Cómo puedo cancelar este comando, antes de reiniciar la máquina?


23
¡Esto es una locura! :)

77
Locura ? ¡Esto es Esparta! Espera, lo siento.
Sirex

2
No estoy solo :)
Alupotha

Respuestas:


28

Si se trata de una máquina local, inicie una nueva terminal y elimine el shell en cuestión.

Si se trata de una máquina remota, ingrese y elimine el shell en cuestión.


15

Puede presionar Ctrl+ Zo iniciar un subshell usando :!bash, y luego matar el shell. Pasos específicos:

Ctrl+Z
kill -9 $$

:suspend(o abreviaturas aceptables de los mismos) pueden funcionar de manera equivalente a Ctrl+ Z.


66
Pero si lo hace :!bash, $$se referirá a la subshell que acaba de crear. Tendrías que usar pspara averiguar el PID. ... PD: Supongo que esto es, hasta cierto punto, una cuestión de estilo, pero si no hay necesidad de hacer cosas sofisticadas, usaría simplemente :!sh. Además, para el caso, intente :sh.
Scott

1
Votación negativa porque, como señala el comentario, tal como está escrito, esto podría dar a alguien la confianza falsa suficiente para salir de vim y controlar su máquina.
Parthian Shot
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.