私は、端末内で、ということを知っているCtrl+ Cキーボードショートカットがお送りしますSIGINT
現在のフォアグラウンド・プロセスにシグナルを。現在のプロセスに送信するため、SIGTERM
またはSIGKILL
現在のプロセスにキーボードショートカットを設定する方法はありますか?時間を節約できると思います。
私は走っている Ubuntu 11.04
私は、端末内で、ということを知っているCtrl+ Cキーボードショートカットがお送りしますSIGINT
現在のフォアグラウンド・プロセスにシグナルを。現在のプロセスに送信するため、SIGTERM
またはSIGKILL
現在のプロセスにキーボードショートカットを設定する方法はありますか?時間を節約できると思います。
私は走っている Ubuntu 11.04
回答:
sttyはこれを制御する責任がありますが、既に1つのセットアップがある場合があります。以下を実行して確認できます。
$ stty -e
speed 38400 baud; 53 rows; 225 columns;
lflags: icanon isig iexten echo echoe echok echoke -echonl echoctl
-echoprt -altwerase -noflsh -tostop -flusho pendin -nokerninfo
-extproc
iflags: -istrip icrnl -inlcr -igncr ixon -ixoff -ixany imaxbel -iutf8
-ignbrk brkint -inpck ignpar -parmrk
oflags: opost onlcr -oxtabs -onocr -onlret
cflags: cread cs8 -parenb -parodd -hupcl -clocal -cstopb -crtscts
-dsrflow -dtrflow -mdmbuf
discard dsusp eof eol eol2 erase intr kill lnext
^O ^Y ^D <undef> <undef> ^? ^C ^U ^V
min quit reprint start status stop susp time werase
1 ^\ ^R ^Q ^@ ^S ^Z 0 ^W
最後の数行はおなじみのはずです。^ C = intrは質問で言及したものです。次の方法で設定方法を確認できます。
$ man stty
^\
送信しますSIGQUIT
。
私は、端末内で、ということを知っているCtrl+ Cキーボードショートカットは、現在のフォアグラウンドプロセスにSIGINTシグナルを送信します。
あなたの知識は2つの点で間違っています:
DEL
キャラクターか何かでした。)SIGTERMまたはSIGKILLを現在のプロセスに送信するためのキーボードショートカットを設定する方法はありますか?
いいえ。回線制御は、送信される信号を制御します。これらの信号は配線されています。彼らは、(標準的なUnixで)しているSIGHUP
、SIGINT
、SIGTTOU
、SIGTTIN
、SIGQUIT
、とSIGTSTP
。回線制御によって生成される他のものはありません。
ttyで利用可能なシグナルのセットはSIGINT
(Ctrl+ C)、SIGTSTP
(Ctrl+ Z)、およびSIGQUIT
(Ctrl+ \)です。それらに異なる文字を割り当てることができますが、利用可能な信号はそれらだけです。目的のために、Ctrl+ を使用\して送信できる場合がありますがSIGQUIT
、エラーのように動作し、デフォルトでコアダンプが発生します。このstty
コマンドを使用して、設定を表示および変更できます。