powershell - PowerShell 属性问题
问题描述
$History = $ServerRequest.$_.24hr_work
引用运算符错误后,该24hr_work
部分出现缺少属性名称。
我已经尝试过$ServerRequest.$_.'24hr_work'
,甚至尝试过让一个对象指向它。
$24 = '24hr_work'
当我输入它时,我在 24 之后就出现了错误,所以我相信数字是问题所在,我只是找不到另一种写法。它与以数字开头的属性有关。
解决方案
确实:要引用名称以数字( 0
, 1
, ... 9
) 开头的属性,您必须:
要么:在文字属性名称周围使用引号。
或:使用变量间接提供属性名称。
展示:
$obj = [pscustomobject] @{ '1a' = '1a''s value' }
# !! BREAKS, because the property name starts with a digit.
$obj.1a
# OK: Quote the property name
$obj.'1a'
$obj."1a"
# OK: Access the property via a *variable*
$propName = '1a'
$obj.$propName
这意味着通过包含该字符串的24hr_work
变量访问属性应该可以工作,但是 [更新:因为被 OP 确认可以工作]。$24
推荐阅读
- python - 使用 selenium 导航到新页面时丢失 cookie
- python - 代码中的elif函数错误
- java - 为什么我们需要将 Native Hibernate Exceptions 转换为 Spring DataAccessExceptio
- reactjs - 在 redux 中在哪里查找在动作生成器中传递的参数
- php - PHP Mysql 搜索前缀
- javascript - Sentry 用户反馈模式未弹出 onClick
- dafny - 不稳定的长计算
- jquery - 尝试使用按钮删除第一个附加的 div 也会删除 jquery 中的第二个附加的 div
- c++ - C 平衡二叉树与 C++ std::map 性能
- laravel - 需要在 laravel 中创建评论的逻辑