Linuxのすべての端末に出力するようにPythonをプログラムする方法

Linuxのすべての端末に出力するようにPythonをプログラムする方法

私はRaspberry Pi用のPythonプログラムを書いています。現在SSHを介してリモートでログインしているすべての端末に表示されるようにRaspberry Pi出力テキストを作成する方法はありますか?

答え1

プログラムを試すことはできますが、wallログインしているユーザーはプログラムを無視してwallメッセージを表示しないことがあります。または、syslogを設定して使用して、特定の施設からその場所にメッセージを送信することもできます*。このメッセージは、(私の経験では)ログインしているすべてのシェルに表示されます。

答え2

非常に簡単な方法で:すべての内容を見ることができます。医者tty全て使って書いています。すべての現在のログインとそのttyを一覧表示するために使用されますwho。例:

$ who
me       tty1         Jun  1 07:09
brian    pts/0        Jun  1 07:15 (:pc1)
john     pts/1        Jun  1 07:15 (:pc88)
sue      pts/2        Jun  1 07:15 (:pc7)

2番目の列は、例えば/dev/pts/0loginで使用されていることを示していますbrian。十分な権限があれば、簡単に書くことができます。たとえば、次のようになります。

echo 'Msg from me: hello!' >/dev/pts/0

私のシステム(piではない、申し訳ありません)では、ttyグループまたはルートに存在する必要があります。

$ ls -l /dev/pts/0
crw--w---- 1 brian tty 136, 4 Jun 28 20:55 /dev/pts/0

関連情報