wallはログインしているユーザー全員の端末画面に一斉にメッセージを送信するLinuxコマンドだ。
このように一斉にメッセージを送信することをブロードキャストという。
例えば、中央制御しているコンピュータへ複数台数の端末コンピュータが接続されているときに、メンテナンスのお知らせなどを接続しているユーザー全員に配信できる。
非常に単純なコマンドでありながら、サーバーやネットワークの管理者には重宝するコマンドだ。ぜひ、この機会に使い方を覚えておいてほしい。
wallコマンドの基本
コマンドの基本動作
使い方は、次のとおりだ。
$ wall
これで、メッセージを配信する準備が整う。
この後にメッセージを入力し、最後にCtrl+Dのショートカットキーで終了すると、メッセージが送信される。
上記wallコマンドを試すなら下のコマンドをLinux上で実行すればすぐに再現可能だ。
1 2 3 4 |
wall Information Maintenance of the main computer is from 15:00 to 15:05 . Ogasawara@SystemTeam |
ここで、Ctrl+Dのショートカットキーを押す。
コンピュータにアクセスしていた端末すべてにメッセージを送った。
そのコンピュータにアクセスしていた端末すべてにメッセージが表示された。
1つの端末へのメッセージの送信
すべての端末ではなく、特定の端末にメッセージを送る方法もある。echoコマンドでリダイレクト先に送信先の端末のttyを入力する。
まず、whoコマンドでログインしているユーザーの一覧を調べる。
$ who
ユーザーの一覧が表示された。
今回はIPアドレス192.168.179.11に送るとしよう。ttyはpts/0だ。
$ echo "Maintenance 15:00" > /dev/pts/0
これで、IPアドレス192.168.179.7の端末に「Maintenance 15:00」と表示される。
IPアドレス192.168.179.7の端末に「Maintenance 15:00」と表示された。
今回は、echoコマンドで紹介したが、>でリダイレクトできるコマンドなら同じ方法で送信先に送ることができる。
catコマンドで1つのテキストファイルを送ったり、grepコマンドの結果を送ったりすることができる。
wall関連コマンド
最後にwallコマンドに関連して、基本的な端末操作のコマンドも紹介しておく
whoコマンド
端末にアクセスしているユーザーを調べる。
ttyコマンド
自分がコンピュータにアクセスしているptsやtty番号を調べる。
echoコマンド
端末画面に文字を表示する。リダイレクト機能を使って指定した端末にのみメッセージを送ることができる。
まとめ
今回は、wallコマンドを使ったコンピュータに接続している全ユーザーの端末に一斉にメッセージを送信する方法、及び、指定した端末へのみメッセージを送信する方法を解説した。
管理ユーザー、ネットワーク管理者はぜひ活用して欲しい。
infomationじゃなくてinformationですよ……
ご指摘いただきありがとうございます。
該当箇所を修正いたしました。
引き続き、ご愛読のほど、よろしくお願いいたします。