【发布时间】:2014-07-15 20:56:58
【问题描述】:
我正在尝试根据计算机上当前的操作系统安装一些程序。我的 .csv 文件如下所示:
OperatingSystem, Program
Microsoft Windows 7, Microsoft .NET Framework
Microsoft Windows 7 Enterprise, Skype
Microsoft Windows 7, Oracle Client
Windows XP, Skype
Windows XP, Adobe Reader
我写了这段代码:
##Determine OperatingSystem
$os = gwmi win32_operatingsystem
$a = $os | % {$_.caption}
##Programs needed to be installed
$test=import-csv "C:\Documents and Settings\Nistru\Desktop\Kituri\Fisier.txt." |
where-object {$_.OperatingSystem -like "Microsoft Windows 7*"} |
select-object Program
如果$_.OperatingSystem 等于变量$a,有什么方法可以检查where-object 块,这样我就不必为每个操作系统重新编写代码了?
【问题讨论】:
-
从阅读
help ForEach-Object开始。 -
@Bill_Stewart 这没什么用,他在
Where声明方面最需要帮助。
标签: powershell csv