Terminal digantung ketika mengedit sesuatu di vi

13

Saya membuat beberapa perubahan pada file jarak jauh di vi menggunakan terminal ketika saya secara tidak sengaja menekan Ctrl+ Salih-alih :wq.

Sekarang semuanya digantung. Saya mencoba Escape,:q!dan segala macam vi commans tetapi tidak ada yang merespons. Layar Terminal macet. Saya tidak bisa menutup sesi Terminal sampai sekarang karena akan menyebabkan hilangnya semua perubahan. Tolong sarankan apa yang harus dilakukan

vipin8169
sumber

Jawaban:

23

Ctrl+ Qakan membatalkan Ctrl+ S. Ini adalah kode kontrol kuno untuk berhenti dan melanjutkan output ke terminal. Mereka masih bisa berguna, misalnya ketika Anda sedang tailfmenyimpan file log dan sesuatu gulungan yang menarik oleh, tetapi era buffer scrollback tak terbatas ini benar-benar usang mereka.

zwets
sumber
7

Saya ingin melengkapi jawaban yang diterima zwets .

Anda dapat melihat arti penekanan tombol khusus dengan mengeluarkan perintah stty -adanman stty .

stty -amencetak semua pengaturan terminal saat ini. Hasilnya di terminal saya:

speed 38400 baud; rows 33; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = M-^?; eol2 = M-^?;
swtch = M-^?; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W;
lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 hupcl -cstopb cread -clocal -crtscts
-ignbrk brkint -ignpar -parmrk > -inpck -istrip -inlcr -igncr icrnl ixon -ixoff
-iuclc ixany imaxbel iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
echoctl echoke

man sttymencetak manual stty. Bagian yang relevan di sini:

Karakter spesial:

   start CHAR
          CHAR will restart the output after stopping it

   stop CHAR
          CHAR will stop the output
Tagihan
sumber