Excel文件的输出内容中有一列或多列非空。示例数据:
希望仅输出公司、城市、州和第一个产品我蹩脚的代码尝试:
$File = 'C:\test1.xlsx' $data = Import-Excel -Path $File | Where-Object "Company" -ne " " $data
输出与输入相同,即显示所有行
omhiaaxx1#
答案很简单...........酝酿中的时间:
$File = 'C:\test1.xlsx' $data = Import-Excel -Path $File | where {$_.Company} $data
mznpcxlj2#
$null
where {$_.Company}
Where-Object
where
" "
$File = 'C:\test1.xlsx' $data = Import-Excel -Path $File | where Company $data
$File = 'C:\test1.xlsx' $data = Import-Excel -Path $File | where Company -notlike '' $data
0
$false
where Company
-notlike ''
''
$true
2条答案
按热度按时间omhiaaxx1#
答案很简单...........酝酿中的时间:
mznpcxlj2#
$null
):where {$_.Company}
依赖于PowerShell的implicit to-Boolean coercion,并使用Where-Object
cmdlet的内置where
别名。" "
,即用于比较的 * 单个空格 *)来简化解决方案:0
视为$false
,因此where Company
也将排除为0
的列值。-notlike ''
,LHS被隐式强制为 * 字符串 *,这使得''
和$null
都产生$true
,但 * 不 * 产生数字0
值。