私は現在プロジェクトに取り組んでおり、netcat
ライブラリを使用して簡単なチャットアプリケーションを実装しました。
クライアントは、ポート番号とコマンドを入力するように求められます
nc -l -p xxxx
ここxxxx
で、はクライアントによって入力されたポート番号です。
同様に、ホストは同じポート番号の入力を求められ、接続はを使用して確立されます
nc <ip_address> -p xxxx
ただし、これにより、メッセージを入力した人のユーザー名が表示されないため、空白のチャットエクスペリエンスが提供されます。
hey
hello
what's up
Nothing
代わりに、私はそれが次のようなものになりたいです、
Foo : hey
Boo : hello
Foo : what's up
Boo : Nothing
netcat
この機能を実現するために使用できますか、それともこれを行う他の何かがありますか?
あなたはこのようなことをすることができます。
アリスがサーバーであると仮定します。彼女はタイプします:
mawk -W interactive '$0="Alice: "$0' | nc -l -p <port_number> <ip_of_alice>
次に、ボブはそのサーバーに接続します。彼はタイプします:
mawk -W interactive '$0="Bob: "$0' | nc <ip_of_alice> <port_number>
このmawk
行は、その人の名前を「チャット」に追加するだけです。-W interactive
stdoutへのバッファなしの書き込みとstdinからの行バッファ付きの読み取りを設定する必要があります。
今、アリスはタイプHi Bob
して見ます:
Hi Bob
ボブは見ています:
Alice: Hi Bob
ボブはタイプHi Alice
して見ます:
Alice: Hi Bob
Hi Alice
アリスは見ています:
Hi Bob
Bob: Hi Alice
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加