为什么空文件夹上的(gci c:\ddd).count
不会返回0而是“没有”
我只是得到一个错误“你无法在空值表达式上调用方法。”当我的计数条件不匹配时。
我需要“获取”零以防止异常?
答案 0 :(得分:7)
使用运算符@()
确保结果是数组,包括空或包含单个项目:
@(gci c:\ddd).count
命令可能会返回:1)一个集合; 2)单个对象; 3)null。你的情况是3.在null(案例3)上调用.Count
或在没有属性Count
的情况下调用(案例2)什么都不会或者可能失败,例如,启用严格模式{ {1}}。
Set-StrictMode -Version 2
始终是一个数组,@(...)
有效。