.Bash_history bersumber secara tidak sengaja

34

Dalam momen cemerlang, saya menjalankan perintah source ~/.bash_history. Untungnya, sebagian besar perintah digunakan vimuntuk mengedit beberapa file, tetapi ada beberapa perintah menakutkan dalam sejarah saya - memindahkan dan menghapus file dengan jalur relatif.

Untungnya saat ini macet dalam satu vimsesi, namun jika saya menangguhkan atau menghentikannya, akan ada sesi berikutnya. File histori adalah 1000 baris.

Bagaimana saya bisa membatalkan perintah ini, sebelum me-reboot mesin?

mdkess
sumber
23
Ini adalah kegilaan! :)
7
kegilaan? Ini SPARTA! - tunggu, maaf.
Sirex
2
Saya tidak sendirian :)
Alupotha

Jawaban:

28

Jika ini adalah mesin lokal, mulai terminal baru dan bunuh shell yang dimaksud.

Jika ini mesin jarak jauh, ssh dan bunuh shell yang dimaksud.

Carl Norum
sumber
15

Anda dapat menekan Ctrl+ Zatau memulai subshell menggunakan :!bash, dan kemudian membunuh shell. Langkah spesifik:

Ctrl+Z
kill -9 $$

:suspend(atau singkatan yang dapat diterima) dapat berfungsi setara dengan Ctrl+ Z.

unxnut
sumber
6
Tetapi jika Anda :!bash, maka $$akan merujuk ke subkulit yang baru saja Anda buat. Anda harus menggunakan psuntuk mengetahui PID. ... NB Saya kira ini, sampai batas tertentu, masalah gaya, tetapi jika tidak perlu melakukan hal-hal mewah, saya akan menggunakan hanya polos :!sh. Juga, dalam hal ini, cobalah :sh.
Scott
1
Menurunkan karena, seperti komentar menunjukkan, seperti yang ditulis ini mungkin memberi seseorang kepercayaan yang cukup palsu untuk keluar dari vim dan menyemprot mesin mereka.
Parthian Shot