1つのPCから別のPCにメッセージ(ポップアップメッセージなど)を送信する方法を見つけようとしています。どちらもUbuntuを使用しています。すでにsmbclientの方法を試しましたが、これはLinux PCからWindows PCの間でのみ機能します。Ubuntu PCから別のUbuntu PCにメッセージを送信する方法が必要です。Windows Net Sendの方法に似ています。
1つのPCから別のPCにメッセージ(ポップアップメッセージなど)を送信する方法を見つけようとしています。どちらもUbuntuを使用しています。すでにsmbclientの方法を試しましたが、これはLinux PCからWindows PCの間でのみ機能します。Ubuntu PCから別のUbuntu PCにメッセージを送信する方法が必要です。Windows Net Sendの方法に似ています。
回答:
インストールssh
してlibnotify-bin
(ターミナル経由で):
sudo apt-get install ssh libnotify-bin
両方のコンピューターで。
(libnotify-bin
既にインストールされている可能性があります。私のものは既にインストールされています。)
次に、(ターミナルを介して)他のコンピューターにSSHで接続します。
ssh <user name>@<ip address>
そして、ログインしたら、次のように入力します。
export DISPLAY=:0
notify-send "Title of message" "message text"
幸せなメッセージ送信!
(または怖いXD)
SSHを使用せずにこれを実行したかったと読みましたが、解決策があると思いnetcat
ます。[nc] Ubuntuにはデフォルトで付属しています。
最初に、バックグラウンドで実行するための「デーモン」が必要です。第二に、アラートをポップアップさせるプログラムが必要です。私がしているzenity
インストールされています。そうでない場合は、インストールするか、スクリプトを編集して、好きなものを使用してください[例xmessage
:しかし、それは見苦しい]。次に、これを「daemon.sh」に貼り付けます。
#!/bin/bash
port=3333
nc -l $port | while read msg; do zenity --info --text "$msg"; done
次に、実行可能chmod +x daemon.sh
にし、バックグラウンドで実行します。./daemon.sh &
これで完了です!実際、各コンピューターでこれを行う必要があります。また、デーモンの起動を自動化することもできます。メニューから「スタートアップ」アプリケーションを開き、スクリプトを追加します。それが完了したら、他のコンピューターにメッセージを送信するには、次のように入力します。
nc 192.168.1.X 3333
次に、メッセージを入力してを押しますEnter。各入力行でメッセージがポップアップ表示されます。ncを終了するには、 Ctrl + C、または Ctrl +を押しDます。
192.168.1.Xを他のPCの実際のローカルIPに置き換えてください。[ ifconfig
IPアドレスの検索に使用できます]
たとえば、別のスクリプトを作成することもできmessage.sh
ます。その中に貼り付けます:
#!/bin/bash
nc 192.168.2.X 3333
その後chmod +x message.sh
。次に./message.sh
、メッセージを入力して入力し、入力するだけで、メッセージが送信されます。また、今考えてみると、サウンド通知を追加することもできます。mplayer
CLIメディアプレーヤーをお勧めします。理解するのは難しいことではありませんが、質問がある場合は、遠慮なく質問してください!
socat
SSL暗号化にnetcatの代わりに使用できると誰かが言った。私はそれを見たことはありません。
nc -l $port | while read msg; do notify-send "$HOSTNAME" "$msg" -i gtk-network; done
while true; do nc -l -v 3333 2> status | while read msg; do ip=$(cat status | grep -o -P '(?<=from).*(?=port)') && notify-send "$ip" "$msg" -i gtk-network; done ; done
cryptcat
パスワードを使用して通信を暗号化するために使用できます。同じように動作しますnc
nc
同じネットワーク上の2台のコンピューター間でテキストを送信するために使用します(暗号化なし)。
オン受けるコンピュータがdo
nc -l 3333
上、送信コンピュータがdo
nc 192.168.1.XX 3333
入力を開始すると、ctlr + cを押すまで、テキストが(Enterキーを押した後)他のコンピューターに表示されます。
を使用して、受信側コンピューターのIPを取得できますhostname -I
(受信側コンピューターでIPを実行します)。
あなたは、ポート3333を使用しての間の任意の数を使用する必要はありません1025と65535以下です。
これは暗号化されていないことに注意してください。ネットワーク上のどのコンピューターでも、転送するテキストを確認できます。