如何在单个get-context上分隔多个条目

时间:2013-12-23 20:28:18

标签: powershell token

我有一个文件:

name user phone other

PowerShell脚本:

get-content -Path Z:\folder\name.txt |
ForEach-Object {
   (get-hotfix -Computername $_ | sort-object Installedon)[-1]
}

效果很好。

我想使用以下文件:

name user phone other

如何仅隔离线上多个项目的名称?

3 个答案:

答案 0 :(得分:1)

现有的两个答案都有效,但是如果您更喜欢使用对象,请尝试以下方法:

Get-Content -Path Z:\folder\name.txt | ConvertFrom-Csv -Delimiter " " | 
ForEach-Object {
 (get-hotfix -Computername $_.name | sort-object Installedon)[-1]
}

答案 1 :(得分:0)

将脚本更改为类似的内容(使用Split()分隔输入字符串中的不同单词):

get-content -Path Z:\folder\name.txt |
ForEach-Object {
   $tokens = $($_.Split(" "));
   (get-hotfix -Computername $tokens[0] | sort-object Installedon)[-1]
}

答案 2 :(得分:0)

最简单的方法可能是使用.split(),并取第一个元素:

$line = 'name user phone other'
$line.split()[0]

name