我试过这个
$arrColors = import-csv -header color colors.txt
$arrColors -contains "blue"
colors.txt包含
blue
red
green
结果是假而不是真为什么?
答案 0 :(得分:4)
试
$arrColors.color -contains "blue"
在3.0之前的powershell版本中,这不起作用,但你可以这样做:
($arrColors | select -expand color) -contains "blue"
感谢@Matt指出这一点
答案 1 :(得分:3)
获取CSV对象上的color
属性:
$arrColors = (import-csv colors.txt).color
$arrColors -contains "blue"
答案 2 :(得分:1)
如果检查$ arrColors的类型,您会看到它是一个表。 您无法比较表格和字符串。
您可以做的是检查表格中是否有蓝色:
PS> $arrColors|Where-object{$_.color -eq 'blue}
然后你必须计算输出中的行数,这给出了以下内容:
PS> $arrColors|Where-object{$_.color -eq 'blue'}| Measure-Object
并检查这是否正面
PS> $counter=$arrColors|Where-object{$_.color -eq 'blue'}| Measure-Object -property color
PS> $counter.color -gt 0