c# - 自动检测机器的代码

标签 c# windows perl unix remote-management

我需要编写一个程序,用 C# 自动检测网络上的 windows 和 unix 机器,然后将文件夹从 windows 共享目录复制到远程机器,并收集机器上有多少处理器。我不知道任何有助于检测机器及其 ip 的 C# 函数。我无权访问事件目录,也没有用于所有机器的中央服务器。我可以创建一个在客户端机器上运行的 perl 程序。 (我也不确定如何在 unix 机器上访问 windows 共享)一般指导和代码示例将不胜感激,谢谢

最佳答案

您有两个截然不同的问题。


1.检测机器是Windows还是unix机器。

$^O将在 Perl 中为您提供。

$ perl -E'say $^O'
linux

>perl -E"say $^O"
MSWin32

2. 从 unix 机器访问远程 Windows 文件共享。

嗯,这是一个 SMB文件共享,对于初学者。

因此,您真正需要的只是一个 SMB 客户端。我很快找到了Filesys::SmbClient ,一个似乎符合要求的 Perl 模块。

关于c# - 自动检测机器的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10096454/

相关文章:

database - GridView返回希伯来字符的问号

windows - 将项目类型更改为 .wixproj 的 cmake 配置是什么?

c# - 如何在 UWP 应用程序中打印?

c# - C# 中的 Sip 解析器

c# - 从 app.config 获取 ConnectionString

.net - 我应该在哪里保存一个 xml 文件,以便它可以在 Windows 注销时由服务写入?

c# - 在 Linq 表达式主体中如何使用变量的值而不是对它的引用?

linux - 在 Perl 中是否有等同于 `tail -f` 的东西?

html - 无法通过 perl File::Tail 读取文件

Linux/珀尔 : Additional output buffers other than STDOUT and STDERR?