对Windows系统脚本+编程的建议

siv*_*udh 0 .net ruby powershell scripting ironpython

我刚刚有一个项目,我必须在Windows操作系统上执行以下操作:

  1. 检测有多少驱动器(C:D:E:..等)连接到当前系统
  2. 每个卷的系统标签是什么
  3. 每个驱动器的存储空间(使用和免费)
  4. 每个驱动器的格式是什么(NTFS/FAT32)
  5. 任何这些驱动器中给定目录中有多少文件
  6. 每个文件大小有多大
  7. 文件处理(每个文件大约2GB),我必须做很多类似C的fseek(),二进制数据解析,以及大到小端转换.还必须编写一些逻辑代码.

我是一位经验丰富的C\C++程序员,但我认为这将是我开始学习脚本编写的最佳时机.

我想到的候选人是:(Python || Ruby)&& PowerShell.

这些是我能用IronPython + Powershell完成的事情吗?或者那里有更好的工具/语言吗?

PS:PowerShell是否意味着要取代VBScript?另外,现在C#,WPF和Powershell的存在对VB.net有什么好处呢?

Joe*_*oey 8

除了列表中的第七个项目,使用Powershell和WMI这应该是相当简单的,因为这可能 Powershell 自然领域.由于前6个列表项不需要其他语言,因此对于最后一个列表项使用的内容并不重要.你可能可以使用PS(我从未用它做过IO)或任何适合你的东西.

至于你的第二个问题:VBScript可能不会在不久的将来消失,因为在编写用于部署的小脚本时,Windows脚本宿主仍然是一个更安全的选择,因为它自98年以来预装在每个Windows上.Powershell仅包含在Windows 7及更高版本.话虽如此,Powershell肯定会针对自动化目的而淘汰WSH和CMD,因为它提供了与上述功能相同的功能以及更多功能(如简单的.NET和WMI访问).

另一方面,VB.NET是Microsoft销售的主要.NET语言之一.它与VBScript几乎没有关系,也不是Powershell或WPF的竞争对手(哎呀,那些是完全不同的技术).你可能会看到与C#的融合,因为这两种语言似乎仍然很难找到他们想要的市场.当你是VB程序员时,VB.NET是最简单的转换到.NET的选择,并且有很多人只是因为他们创建了.NET而不想丢失.


aph*_*ria 6

PowerShell可以轻松处理1-6.7号可以在PowerShell中完成,但根据细节可能有更好的选择.

请参阅您建议使用什么教程学习PowerShell?有关学习PowerShell的一些好消息.