Di mana saya dapat menemukan daftar lengkap kombinasi keyboard yang mengirim sinyal di Linux?
Misalnya:
- Ctrl+ C- SIGINT
- Ctrl+ \- SIGQUIT
Di mana saya dapat menemukan daftar lengkap kombinasi keyboard yang mengirim sinyal di Linux?
Misalnya:
Jawaban:
Garis disiplin Linux N_TTY hanya mengirim tiga sinyal berbeda: SIGINT, SIGQUIT, dan SIGTSTP. Secara default, karakter kontrol berikut menghasilkan sinyal:
man stty | grep -C1 signal
adalah salah satu sumber untuk ketiganya menjadi satu-satunya sinyal yang dihasilkan oleh terminal.
SIGINT
, SIGQUIT
dan SIGTSTP
adalah satu-satunya "biasa" sinyal yang dikirim oleh disiplin line. Pada BSD Anda juga memiliki hal-hal seperti SIGINFO
, tetapi itu bukan standar.
Anda dapat menggunakannya stty
untuk memeriksa atau mengubah karakter yang menghasilkan sinyal.
$ stty -a | grep -Ewoe '(intr|quit|susp) = [^;]+'
intr = ^C
quit = ^\
susp = ^Z
intr
(interupsi) menghasilkan SIGINT
, quit
menghasilkan SIGQUIT
, susp
(menangguhkan) menghasilkan SIGTSTP
. stty -a
juga akan menampilkan hal-hal seperti start = ^Q; stop = ^S;
dan erase = ^?
(backspace), yang tidak mengirim sinyal tetapi memengaruhi lapisan terminal sebaliknya.
Plain stty
akan menampilkan pengaturan non-default dan mis. stty intr ^Q
Akan mengubah karakter interrupt ^Q
sebagai gantinya ^C
.
Saya pikir ^L
(umpan form, halaman baru) bukan fitur terminal, tetapi karakter yang sering digunakan oleh aplikasi untuk meminta redraw view, memeriksa kembali ukuran jendela pada saat yang sama.
^L
memiliki arti berbeda untuk aplikasi yang berbeda. Pada kebanyakan curses
aplikasi berbasis (seperti vim
, less
, mutt
, mc
, dll) itu memaksa redraw lengkap (sehingga kembali memeriksa ukuran jendela), tetapi dalam kerang ( bash
dll) itu hanya membersihkan layar. Tidak ada yang SIGWINCH
terlibat.
man 1 stty
.