GNU/Linux >> Linux の 問題 >  >> Linux

Linux の write コマンドと例

はじめに

write Linux のコマンドは、ターミナルを介してログインしている 2 人のユーザー間に通信回線を作成します。このコマンドを使用すると、ある端末から別の端末にテキストをコピーすることで、ユーザー間でリアルタイムでメッセージを送信できます。

この記事では、例を通して書き込みコマンドの使用方法を示します。

前提条件

  • ターミナルへのアクセス
  • マルチユーザー環境
  • Sudo グループの権限
  • テキスト ファイルを作成するためのテキスト エディタ

Linux 書き込みコマンドの構文

write の構文 Linux でのコマンドは次のとおりです:

write <user> <tty name>

user パラメータは必須で、受信側のユーザー名を表します。 tty name 複数のターミナルが開いている場合のターミナル環境を指定します。

通信には書き込み権限が必要です。次の権限を有効にします:

mesg y

端末はメッセージを出力しません。

Linux 書き込みコマンドの例

write コマンドには、pts (疑似端末スレーブ) または tty (テレタイプ) セッションを介して少なくとも 2 人のログイン ユーザーが必要です。ログイン:

sudo login <username>

たとえば、2 人の異なるユーザーが同じマシンで作業している場合、各ユーザーはターミナル セッションでコマンドを実行し、ユーザー名を指定します。

このコマンドは、sudo とユーザーのパスワードを入力して続行するように求めます。

誰がログインしているかを確認するには、次のようにいずれかの端末で w コマンドを使用します:

w

この出力は、2 人のユーザーが pts コンソールを介してログインしたことを示していますが、最初のユーザーはローカル ディスプレイ (GUI) を介してログインしています。最初のユーザーは login を実行しました

ユーザーにメッセージを書く

write を使用して別のユーザーにメッセージを書き込むには コマンドで、次の操作を行います:

1. write を実行します コマンドを実行し、ユーザーを指定します:

write bob

コマンドは入力メッセージを予期します。受信側では、ユーザーは次の情報で接続に関する確認を取得します:

  • メッセージの送信元
  • メッセージの送信元
  • タイムスタンプ。

2. ユーザーへのメッセージを書き込みます。 Enter を押す 新しい行に入り、メッセージを終了しません。

同じメッセージがリアルタイムで受信側に表示されます。

3. write を終了するには コマンド、CTRL を押します +D .

2 番目のユーザーは EOF を受け取ります コマンドが終了したことを示すメッセージ。

会話をする

write を使用して 2 人のユーザー間で会話を行うには コマンド、実行:

write bob

後に任意のメッセージを送信します。 2 番目のユーザーが応答するには、write を実行します 最初のユーザー名を指定するコマンド:

write kb

ユーザーがいつメッセージを完了したかを区別する適切な方法がないため、ステートメントを終了する従来の方法は o を使用することです 文字(「オーバー」を象徴)。会話の終わりを知らせるには、oo と書きます。 (「オーバーアンドアウト」の場合)。

CTRL +D EOF を送信します 文字を中断して通信チャネルを終了し、プログラムを終了します。

書き込むメッセージをパイプ

echo コマンドを使用してメッセージを入力し、write にパイプします コマンド:

echo "Hello from KB" | write bob

送信側の通信チャネルはすぐに終了しますが、受信側はメッセージを受信して​​終了を待ちます。

ファイルからメッセージを書く

テキスト ファイルからメッセージを送信するには、次の手順を実行します。

1. nano などのテキスト エディターを使用してテキスト ファイルを作成します。

nano message.txt

2. ファイルにテキストを追加します。

3. ファイルを保存して nano を閉じます (CTRL +XY入力 ).

4. write 経由でファイルの内容を送信します コマンド:

write bob < message.txt

受信者は、テキスト ファイルからメッセージを確認します。

指定された TTY への書き込み

ユーザーが複数の端末セッションを開いている場合、write コマンドは、アイドル時間が最も短い端末を選択します。

注: w を使用 コマンドで TTY 名とアイドル時間を確認します。

送信先の TTY を指定するには、次を実行します:

write bob pts/0

メッセージは pts/0 TTY にのみ到着します。

Bash スクリプトで書く

write を使用 Bash スクリプトで、コマンドまたはタスクが完了したときに自分自身または別のユーザーに通知します。たとえば、次の Bash スクリプトを見てください:

#!/bin/bash

sudo apt update -y
echo "Update completed" | write bob
sudo apt upgrade -y
echo "Upgrade completed" | write bob

スクリプトを実行すると、システムの更新とアップグレードが開始されます。 write コマンドは、ユーザーに bob を通知するのに役立ちます 各ステップが完了すると、メッセージを端末に出力します。

結論

このチュートリアルの例を見れば、write の使い方がわかります。 Linux のコマンド。

次に、Bash read コマンドを使用してユーザーの入力を保存する方法を学びます。


Linux
  1. 例を含むLinuxTeeコマンド

  2. 例を含むLinuxヘッドコマンド

  3. LinuxでのJQコマンドと例

  1. 例を含むwcLinuxコマンド

  2. Linuxのソートコマンドと例

  3. Linuxでのエコーコマンド(例付き)

  1. Linuxでのmanコマンドと例

  2. LinuxでのAWKコマンドと例

  3. LinuxでのCurlコマンドと例