Saya telah mencari jawaban dan sejauh ini tidak menemukan apa pun untuk menjawab pertanyaan saya. Saat ini saya masuk ke server Ubuntu saya dan setelah menjalankan proses saya tidak dapat menjalankan interupsi di atasnya. Ini stty-a saya:
user@Ubuntu1:~$ stty -a
speed 38400 baud; rows 93; columns 200; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = M-^?; eol2 = M-^?;
swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V;
flush = ^O; min = 1; time = 0;
Saya tidak punya apa-apa di .bashrc saya yang mengubah interupsi.
Ini sama untuk semua pengguna termasuk root. Saya juga telah mencoba masuk dari lokasi yang berbeda menggunakan terminal yang berbeda dan setiap kali hasil yang sama ini muncul. Saya telah menggunakan ssh dan ssh -X untuk login.
Sunting: Secara lokal semua interupsi saya berfungsi dengan baik.
Pembaruan: Saya masih mencari jawaban. Teman saya memiliki masalah yang persis sama. Masalahnya tampaknya sangat ketika ketika masuk (dari PC, Mac, Linux) keyboard tidak mengambil kunci ini (meskipun dipetakan dengan benar).
Ctrl+C
saat menjalankan proses lain (misalnya cat
)? Mungkin itu proses yang mengabaikan Ctrl+C
. Atau maksud Anda secara lokal di server Ubuntu, proses tertentu merespons Ctrl+C
, dalam hal apa, di terminal apa Anda mencoba? Bagaimana dengan screen
sesi?
kill -s 2
(perhatikan -s 2
, itu SIGINT
(sinyal yang biasanya dikirim ketika Anda menekan Ctrl + C, default untuk kill
adalah SIGTERM
)), maka perintah tersebut tidak mengabaikan interupsi. Sesuatu yang lain mengambilnya. Ketika Anda menjalankan ini secara lokal dan berfungsi, apakah Anda mengatakan itu bekerja menggunakan terminal yang sama di mesin klien untuk menjalankan sesuatu secara lokal, atau menjalankan emulator terminal secara lokal di mesin server? Saya ingin tahu apakah Anda menggunakan beberapa emulator yang mencoba meniru Ctrl + C dari dunia Windows ...
Ctrl+V
dan memukulCtrl+C
? Sudahkah Anda mencoba membunuh prosesnyakill -s 2 <pid_of_process>
? Ini harus sama dengan mengirim sinyal SIGINT ke proses. Periksa pengaturan kunci emulator terminal Anda.