Tips記事
» 2002年12月19日 16時06分 UPDATE

「Ctrl」+「S」でキー入力が受け付けられなくなる

[木田佳克,ITmedia]

 ついついWindows上で一般的なファイル保存のショートカット(「Ctrl」+「S」キー)に手が伸びてしまい、キー入力がまったく受け付けられなくなってしまった。これは、Linuxのコンソール上で「Ctrl」+「S」キーを押すとターミナルへの出力がロックされるためだ。

 この場合には、焦らずに「Ctrl」+「Q」キーを押せば解除される。混乱を避けるためにこの機能そのものを無効にさせたい場合、次のように指定しよう。

 まず最初に現在の状況をモニタしてみる。コマンドラインから「stty -a」と入力すると「stop」機能が「Ctrl」+「S」に割り当てられていることが分かる。

 これを無効にすることは簡単であり、コマンドラインから「stty stop undef」と入力すればよい。

# stty -a
speed 38400 baud; rows 65; columns 100; line = 0; intr = ^C; quit = ^\; erase = ^H; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>; 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
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

 以降もstop機能を無効にさせたい場合には、bashシェルの場合(Red Hatなどで標準).bashrcファイル内に「stty stop undef」を記述しておけばよい。

$ vi ~/.bashrc

# .bashrc

# User specific aliases and functions
stty stop undef

# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ