^@鍵は何ですか?

^@鍵は何ですか?

端末に入力すると、^@はどのキーを表しますか?

システムはこのキーでスパムを受信して​​いるため、このキーを無効にする必要があります。

ベストアンサー1

^@キーではなく制御文字を表現したものです。この場合、NUL文字はバイト値が0の文字です。

nがXのバイト値の場合のバイト値^Xはですn ^ 0x40

以下を使用してバイト値を知ることができますX

printf X | od -An -tu1

または(シングルバイト文字の場合):

printf '%d\n' "'X"

だからここにあります:

$ printf '%s\n' "'@"
64
$ echo "$((64 ^ 0x40))"
0

のため^?

$ printf '%s\n' "'?"
63
$ echo "$((63 ^ 0x40))"
127

(これはDEL文字です)。

端末に応じてを押すCtrl+Spaceか入力することでこれを行うことができますCtrl+@。 DebianのxtermのイギリスのキーボードでこれをオンにしましたCtrl+2(イギリスのキーボードではShift 2 "、アメリカのキーボードでは@)。

端末と端末エミュレータは NUL 文字を無視します。それ充填材過去にフロー制御がなかったとき、アプリケーションはこの文字を使用して2つの異なる制御文字の間に端末時間を提供しました。

^@NULの視覚的表現により、アプリケーションなどの端末で選択されたものが表示さvimれます。また、一般的にそれを次のように考えます。エコ入力中に入力したNUL文字。ターミナルラインルールicanonがモードにあり、echoctlパラメータが有効になっている場合は、ターミナルドライバ自体によって実行されるか(通常はデフォルトで有効になっている、参考資料を参照)、stty -aアプリケーションのラインエディタ(でreadline使用されます)によって実行されます。bash

おすすめ記事