UnixとWindowsの間でテキストメッセージを書き込む


10

同じLANの2人のユーザー間でテキストメッセージを送信することはできますが、最初にWindowsとcmdを実行し、2番目にLinux / Unixを実行していますか?

インスタントメッセージングサービスを探していません。Linuxシェルに次のように入力したい

write user@192.168.x.x:port message

Windowsユーザーがそのcmdウィンドウでテキストを読み取ることができるようにしますmessage。その後、Windowsユーザーは別のコマンドで応答できるはずです。出来ますか?

Windows msgコマンドについて読みましたが、OSのすべてのバージョンで動作しません。他に何かありますか?

PuTTYの代わりに、LinuxシェルとWindows cmdを使用したいと思います。


これ、ターミナルに統合されていますが、一種のインスタントメッセージングサービスです。
PavelŠimerda2014

回答:


5

Unixの場合: nc -l 192.168.1.10 32849

Windowsの場合: telnet 192.168.1.10 32849

32849はファイアウォールルールで許可されている任意のポートで、IPはUnixマシンのリスニングIPです。ncnetcatユーティリティです。


いい案!上のWindows7のx64の私は、telnetクライアント「Windowsの機能」をインストールする必要がありました。アイデアはそうすることpkgmgr /iu:"TelnetClient"でしたが、結果としてOperation failed with 0x8007000B An attempt was made to load a program with an incorrect format.、ロギング後に私は見ましたYou cannot service a running 64-bit operating system with a 32-bit version。にc:\windows\sysnative\dism.exe /online /norestart /logpath:"c:\foo.txt" /enable-feature /ignorecheck /featurename:"TelnetClient"重点を置いて動作しましたsysnative。インストールしたc:\windows\sysnative\telnet.exe
n611x007 2015

JohnMurhyのおかげ-pnc -l 192.168.1.10 -p 32849、のように使用する必要がありました
n611x007 2015

2つのコマンドで異なるIPを使用する必要がありました。(両側にある他のマシンのIP。)
n611x007

これらの新しいコメントの後で再度テストしましたが、[Free] BSD ncコマンドを使用して-pフラグを指定する必要はありません。「wolf%sudo nc -l 10.0.0.1 -p 8888 nc:-pと-lは使用できません」と表示されます。また、任意のポートにバインドするには、スーパーユーザーアクセスが必要であることについても触れませんでした。naxaがなぜ別のIPを必要とするのか、あるいはそれがどのように機能する可能性があるのか​​はわかりませんが、機能しないはずです。これは、-lフラグが* nix IPとポートの組み合わせでローカルでリッスンしていることを意味するためです。WindowsマシンのIPとは何の関係もありません。このシナリオでは、Telnetがクライアントとして機能しています。
projectdp 2015

3

projectdpの答えからのアイデア:Linux上のnetcatはwinでtelnetを提供します-pただし、2つのマシンで異なるIPアドレスが必要でした。

  • Linuxの場合: netcat -l 10.0.0.2 -p 14415-あなたの場合は窓が 10.0.0.2であります

  • Windowsのtelnet 10.0.0.1 14415場合:-Linuxが10.0.0.1の場合

  • Telnetを終了^]するには、Ctrl+ ]を押してからを入力しますq

  • 14415便利なテーブルのように任意のポートを選択することは、David Verebにあります。

しかし、win7 x64では、最初にtelnetを有効にする必要がありました。

  • c:\windows\sysnative\dism.exe /online /norestart /logpath:"c:\foo.txt" /enable-feature /ignorecheck /featurename:"TelnetClient"

  • 元の試みの問題は、pkgmgr32ビットを使用しようとしdism、64 ビットを非難することでした。私が持っているsysnativeからアイデアをオスマンShener

  • にインストールされますc:\windows\sysnative\telnet.exec:\windows\sysnativePATH環境変数にを入れましたsysdm.cpl

  • Linux用のDeVuanまたはUbuntuをお持ちの場合、 sudo apt-get install netcat-traditional

チャットは次のようになりました。

devuan-netcat win7-telnet


こんにちはナクサ、私はここでのテストで少し混乱していますが、どうすればLinuxでWindowsホストのIPを使用してリスニングソケットを開くことができますか?WindowsホストIPをリッスンておらず、LinuxホストIPとポートをリッスンています。WindowsホストからTelnetを使用している場合は、LinuxマシンのリスニングソケットとIPに参加するクライアントとして機能しています。私はあなたの方法でそれをテストしなければならないでしょう。
projectdp 2015

Naxa、試してみましたが、これらの2つのマシンを正常に接続する方法がわかりません。ncはローカルIPアドレスとローカルポートでリッスンしている必要があります。telnetはリモートIPおよびリモートポートに接続している必要があります...各マシンのipconfig / ifconfigの出力をリストできますか?
projectdp 2015

@projectdpああ、また見つけました。結局、私はあなたに同意します。これを試したかったので答えなかったと思います。残念ながら私は夢中になり、もうマシンを持っていません。私はそれらが仮想化されたと思いますが、これは一般的に最も奇妙なネットワーク異常を引き起こすことができると私は知っています...
n611x007

1

どの程度NET SEND {name1 | * | /DOMAIN[:name] | /USERS} messageのWindowsマシン上、およびecho "message" | smbclient -M name2Linuxボックスの?name1およびname2は、マシンのnetbios名です。


少し明確にしてください!「NET SEND」コマンドは通常、「メッセンジャー」を使用したwin to winメッセージパッシングに使用されます。Bashの場合も使用して勝つことはできますか?
2016年

@diffracteDテストするWindowsマシンがありません。私は「勝つためにバッシュ」で仮定します、あなたはLinuxからウィンドウズへの意味ですか?私の2番目の例はまさにそれを行うべきです
noleti

0

LinuxからWindowsコマンドを実行できる興味深いツールがありますwinexe。名前はです。

したがって、次のように入力するだけで、同じマシンからコンソールにメッセージを送信できます。 winexe -U domain/user%password --interactive=1 //WindowsMachine "msg console \"Your message goes here.\""

ご覧のとおり、noletiの答えははるかに単純ですが、winexeを使用すると、そのマシンで計算または必要なものを開くこともできます。私たちは、LinuxのバッチスクリプトからWindowsマシンに未参加のインストールを行うためにそれを使用しています。かなりクールで時間を節約...

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.