talk コマンド

目的

他のユーザーと会話します。

構文

talk {User | User@Host | Host!User | Host.User | Host:User } [ Tty ] [ Pty ]

説明

/usr/bin/talk コマンドによって、同じホスト上または異なるホスト上の 2 人のユーザーは対話式に会話をすることができます。talk コマンドは、各ユーザーのディスプレイ上で送信ウィンドウと受信ウィンドウの両方をオープンします。talk コマンドが他のユーザーの入力を表示している間に、各ユーザーが送信ウィンドウに入力することができます。

会話を開始するには、ローカル・ユーザーが talk コマンドを実行し、リモート・ユーザーのログイン ID を指定します。リモート・ユーザーのログイン ID には NLS 文字を含めることができます。リモート・ユーザーがリモート・ホスト上にいる場合は、ホストの名前も以下のいずれかの方法で指定しなければなりません。


User@Host
Host!User
Host.User
Host:User

完全ドメイン名を使用している場合、ユーザーとホストを指定する唯一の有効な形式は User@Host です。例えば、michael@host17.dev.ibm.com は、dev.ibm.com ドメインのホスト host17 のユーザー michael との会話を開始しようとします。

ローカル・ユーザーが会話を開始すると、リモート・ユーザーに会話への勧誘メッセージが送信されます。ローカル・ユーザーが tty も指定した場合は、送信勧誘メッセージが指定された端末にのみ送られます。そうでない場合には、送信勧誘はリモート・ユーザーがログインしている端末に送られます。これは通常コンソールですが、別の端末の場合もあります。 この送信勧誘を受け入れると、talk コマンドはローカル・ユーザーの端末に 2 つのウィンドウを表示し、リモート・ユーザーが送信勧誘に応答するまで進行メッセージを表示します。

注: リモート・ユーザーが AIXwindows を実行中で、別の端末をオープンしていない場合には、 talk コマンドで送信勧誘を送信できません。

会話をしたい場合、リモート・ユーザーもまた、 端末から talk コマンドを実行し、 該当する場合は、ローカル・ユーザーのアカウント名とホスト名を指定しなければなりません。 リモート・ユーザーが送信勧誘を受け入れると、 talk コマンドは各ユーザーの端末に 2 つのウィンドウを表示します。 1 つのウィンドウにはローカル・ユーザーが入力した内容を表示し、 もう一方のウィンドウにはリモート・ユーザーが入力した内容を表示します。 会話を終了するには、 いずれかのユーザーが割り込み (Ctrl-C) キー・シーケンスを押すと接続がクローズされます。 割り込みキー・シーケンスは stty コマンドを使用して表示され修正されます。

会話に参加しているユーザーが各国語サポート (NLS) 機能を使用している場合には、そのユーザーの端末が、NLS 文字出力をサポートしていなければなりません。同様のことは、漢字機能を使用する会話にも当てはまります。すなわち、使用している端末が、漢字文字の出力をサポートしていなければなりません。

talk コマンドは、バインド先の有効なアドレスを要求します。リモート・マシンのホスト名は、ping コマンドなどの他のネットワーク・コマンドが使用できる稼働中のネットワーク・インターフェースにバインドされていなければなりません。コンピューターにネットワーク・インターフェースがない場合、すなわちスタンドアロン・コンピューターである場合は、talk コマンドを機能させるため、そのホスト名をループバック・アドレス (127.0.0.1) にバインドしておく必要があります。例えば、スタンドアロン・マシン上の localremote という名前の 2 つのユーザーが以下のように入力することによって、talk コマンドを使用して会話を開始できたとします。

talk remote@loopback

ユーザー remote の応答先は以下のようになります。


talk local@loopback

talk コマンドの送信勧誘を不許可にするために、リモート・ユーザーは mesg コマンドを発行することができます。

注: talk コマンドでは、Talk 4.3 プロトコルを使用します。

セキュリティー

RBAC ユーザーおよび Trusted AIX ユーザーへの注意: このコマンドは特権命令を実行できます。 特権命令を実行できるのは特権ユーザーのみです。 権限および特権についての詳細情報は、「セキュリティー 」の『特権コマンド・データベース』を参照してください。 このコマンドに関連した特権および権限のリストについては、lssecattr コマンドまたは getcmdattr サブコマンドの項を参照してください。

  1. リモート・ホストにログインしているユーザーと会話するには、以下のように入力します。
    talk dale@host2
    この例では、ローカル・ユーザーが host2 にログインしているユーザー dale と会話を開始します。
  2. ユーザーがリモート・ホストのコンソールにログインしている場合にのみ、そのユーザーと会話するには、以下のように入力します。
    talk dale@host2 console
    ユーザー dale は、host2 のコンソールにログインしている場合にだけ、このメッセージを受信します。