2

ネットワーク上の C# で Windows と UNIX マシンを自動検出するプログラムを作成し、Windows 共有ディレクトリからリモート マシンにフォルダーをコピーして、マシン上にあるプロセッサの数を収集する必要があります。マシンとその IP の検出に役立つ C# 関数を知りません。Active Directory にアクセスできないか、すべてのマシンの中央サーバーを持っていません。クライアント マシンで実行する perl プログラムを作成できます。(また、UNIXマシンでWindows共有にアクセスする方法もわかりません)一般的なガイダンスとコード例をいただければ幸いです。

4

2 に答える 2

1

2 つの非常に異なる質問があります。


1. マシンが Windows マシンか UNIX マシンかを検出します。

$^OPerlでそれを提供します。

$ perl -E'say $^O'
linux

>perl -E"say $^O"
MSWin32

2. UNIX マシンからリモートの Windows ファイル共有にアクセスします。

まず、SMBファイル共有です。

したがって、本当に必要なのは SMB クライアントだけです。私はすぐにFilesys::SmbClientを見つけました。これは、法案に適合すると思われる Perl モジュールです。

于 2012-04-10T22:08:09.130 に答える
0

ネットワーク マシンを検出するためにNmapを使用できます。これはクライアントレスであり、-O パラメータを使用すると、マシンが Windows OS を実行しているか Linux OS を実行しているかがわかります。マシンに SNMP または WMI がインストールされている必要がありますが、SNMP または WMI を使用して CPU の数を取得できます。ただし、リモート マシンで実行されているクライアントを使用すると、特にファイルをコピーする必要がある場合は、すべてがはるかに簡単になります。

于 2012-04-11T09:59:10.180 に答える