Linux コマンドラインで他のユーザーと通信する方法

Linux コマンドラインで他のユーザーと通信する方法

Linux のコマンドラインで他のユーザーにメッセージを送信するのは簡単です。これを行うコマンドは多数ありますが、問題は、多数のコマンドの中から使用する適切なコマンドを選択する必要があることです。そこで、よく使用される Linux ユーザー通信コマンドを 4 つ選択し、これら 4 つのコマンドがどのように機能するかを説明します。

wall コマンド (write all の略) を使用すると、システムにログインしているすべてのユーザーにメッセージを送信できます。どのユーザーでも wall コマンドを使用できますが、通常、wall コマンドはシステム管理者がユーザーにアナウンスを送信するために使用されます (たとえば、サーバーがメンテナンスのためにシャットダウンされるなど)。

システム管理者は次のようなメッセージを送信する場合があります。

$ wall The system will be going down in 15 minutes to address a serious problem

ログインしているすべてのユーザーには、次のような通知が表示されます。

admin@dragonfly (pts/0) からのブロードキャストメッセージ (2020 年 3 月 5 日木曜日 08:56:42):
深刻な問題に対処するため、システムは15分以内に停止します

送信するメッセージに一重引用符が含まれている場合は、次に示すようにメッセージを二重引用符で囲む必要があります。

$ wall "Don't forget to save your work before logging off"

上記の例のコマンドでは、情報を送信するときに最も外側の引用符は表示されませんが、最も外側の引用符がない場合には、このコマンドが実行され、文中の一重引用符と一致する引用符が文を終えるまで待機します。

メッセージ

何らかの理由で特定のユーザーからのメッセージを拒否したい場合は、mesg コマンドを使用できます。このコマンドは、パラメータ n または y とともに使用する必要があります。パラメータ n または y は、それぞれユーザーの電子メールを拒否または受け入れることを意味します。次に例を示します (alvin はユーザー名です)。

$ メッセージ n アルビン
$ メッセージとアルビン

mesg コマンドを使用してユーザーをブロックした後、ブロックされたユーザーにはブロックされたという通知が届かないことに注意してください。つまり、ブロックされたユーザーは自分がブロックされたことを知ることができません。

このコマンドを使用して、ユーザー名パラメータを省略することで、すべてのユーザーからの通信を許可またはブロックすることもできます。

$ メッセージ
$ メッセージ n
書く

テキスト メッセージを電子メールに変換せずに直接送信できる別のコマンドは write です。このコマンドは、特定のユーザーと通信するために使用できます。たとえば、alvin という名前のユーザーにメッセージを送信する場合は、次のコマンドを使用できます。

$ アルビンを書く
まだデスクにいますか?
すぐにあなたと話さなければなりません。
^C

メッセージを書いて送信したら、Ctrl+C を押して終了します。このコマンドを使用するとメッセージを送信できますが、デュプレックス チャネルは開かれず、メッセージの送信にのみ使用できます。受信側ユーザーが複数の端末にログインしている場合は、転送先の端末を選択するか、以下に示すように、転送に最も時間がかからない端末をシステムに選択させることができます。

$ 書き込み alvin#1

ユーザー alvin によってブロックされている場合は、次のメッセージが表示されます。

$ アルビンを書く
書き込み: alvin はメッセージを無効にしています
トーク / ytalk

talk コマンドと ytalk コマンドを使用すると、1 人以上のユーザーと対話型の通信を確立できますが、talk コマンドでは 1 人のユーザーとのみ対話型の通信を確立できます。 talk コマンドと ytalk コマンドはどちらも 2 つのペインを持つウィンドウを起動します。通信中の各当事者は、ウィンドウの上部ペインに情報を入力し、下部ペインで応答情報を確認できます。

通信に参加するよう求められた側は、以下に示すように、talk に続けて通信を開始した側のユーザー名を入力することで応答できます。

Talk_Daemon@dragonfly からのメッセージ 10:10 ...
トーク: [email protected] から接続が要求されました。
トーク: 応答: talk [email protected]
$ アルビンと話す

システムに talk と ytalk の両方がインストールされている場合、talk コマンドはデフォルトで ytalk コマンドに関連付けられるため、talk alvin と入力すると、システムは実際に ytalk alvin を実行することに注意してください。私のシステムには両方のコマンドがインストールされているため、上記のコマンドを実行した後に表示される出力は、実際には ytalk alvin の出力です。

----------------------------= YTalk バージョン 3.3.0 =--------------------------
レポートは準備できましたか?
-------------------------------= root@lxlinux =----------------------------
ちょうど終わったところです

上記はユーザー alvin が見るウィンドウ情報ですが、通信のもう一方の端の root が見るウィンドウの内容は逆になります。

----------------------------= YTalk バージョン 3.3.0 =--------------------------
ちょうど終わったところです
-------------------------------= alvin@lxlinux =----------------------------
レポートは準備できましたか?

同様に、このコマンドは ctrl+C で終了できます。

このコマンドを使用して他のシステム上のユーザーと通信するには、-h パラメータを追加する必要があります。パラメータ値はホスト名または IP アドレスです。使用例は次のとおりです。

$ talk -h 192.168.0.11 alvin

要約する

Linux システムには、ログインしているユーザーに情報を送信するために使用できるコマンドが多数あります。これらのコマンドは、wall を使用して情報をブロードキャストしたり、talk を使用して 2 人のユーザー間で対話型の会話を行ったりするなど、いくつかのシナリオで非常に役立ちます。どちらも、ユーザーが情報をすばやく交換できるようにします。これらの一般的なコマンドの使い方を習得すると、ユーザー間のコミュニケーションがより便利になり、コミュニケーションの効率が向上します。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Linux で履歴コマンドを表示および実行する方法
  • Linux のコマンドライン履歴を隠す方法を教えます
  • Linuxのシェル履歴コマンド記録機能
  • Linux には make コマンドがありません (make: *** ターゲットが指定されておらず、makefile または make コマンドのインストール方法が見つかりません)
  • Linux telnetコマンドの使用
  • Linux gzip コマンドのファイル圧縮実装原理とコード例
  • Linuxコマンド履歴の調整方法の詳細な説明

<<:  Vue3における7種類のコンポーネント通信の詳細

>>:  MySQL IFNULL判定問題の解決方法

推薦する

Mysql は非集計列を選択できません

1. はじめに最近ブログをアップグレードし、記事ページの下部に前の記事と次の記事に直接ジャンプできる...

開発効率の向上に役立つ 56 個の実用的な JavaScript ツール関数

目次1. デジタルオペレーション(1)指定された範囲内で乱数を生成する2. 配列操作(1)配列の順序...

MySql が常に mySqlInstallerConsole ウィンドウをポップアップする問題の解決策

MySql は常に MySQLInstallerConsole.exe ウィンドウを定期的にポップア...

Vue コンポーネントの構成構造とコンポーネント登録の詳細

目次1. コンポーネントの構成2. コンポーネント名2.1 コンポーネントの命名3. グローバル登録...

HTML で 2 つの div タグの間に垂直線を描く方法

最近、インターフェースを描画しているときに、インターフェースに垂直線を描画し、この垂直線の高さが親 ...

HTML における src と href の違いについての簡単な説明

簡単に言うと、srcは「このリソースをロードしたい」という意味で、hrefは「このリソースに関連付け...

Webページ作成の質問: 画像ファイルのパス

この記事は 123WORDPRESS.COM Lightning によるオリジナルです。転載する際に...

jsはテーブルの追加と削除の操作を動的に実装します

この記事の例では、jsでテーブルを動的に追加および削除するための具体的なコードを参考までに共有してい...

CentOS 7 で NFS ファイル共有ストレージ サービスを構築するための完全な手順

序文NFS (Network File System) は、ネットワーク ファイル システムを意味し...

Linux7で仮想ホストを実装する3つの方法

1. 同じIPアドレス、異なるポート番号仮想ホスト 1: ホスト IP アドレスは 172.16.3...

5つのクールで実用的なHTMLタグと属性の紹介

実はこれもクリックベイトのタイトルであり、「派手」とは言えません。ただ私が無知で、こうしたラベルを見...

nginx で正規表現を使用してワイルドカードドメイン名を自動的に一致させる方法

Nginxは正規表現を使用して、ワイルドカードドメイン名をディレクトリに自動的に一致させます。 Ng...

Vue3+TypeScriptは再帰メニューコンポーネントの完全な例を実装します

目次序文必要成し遂げる最初のレンダリングメニュー項目をクリックしますスタイルの区別デフォルトのハイラ...

Win10環境にMysql5.7.23をインストールする際の問題点と落とし穴

たくさんのチュートリアルを読みましたが、うまくインストールできませんでした。しばらく試行錯誤した後、...