表达式或语句中出现意外的令牌错误

时间:2017-11-20 23:44:30

标签: powershell

我是Powershell的新手,所以我会尽力描述我在做什么。 我正在尝试运行一个清理我的WSUS服务器的脚本。

这是代码卡住的部分。

$ Adamj`ServerAdminProxy = $ Script:WSUSAdminProxy

错误返回

在行:1字符:8 + $ Adamj ServerAdminProxy = $ Script:WSUSAdminProxy + ~~~~~~~~~~~~~~~~ 表达式或语句中出现意外的标记“ServerAdminProxy”。     + CategoryInfo:ParserError:(:) [],ParentContainsErrorRecordException     + FullyQualifiedErrorId:UnexpectedToken

我虽然可能与“老实说我不确定”有关。

希望这对你来说很清楚..

2 个答案:

答案 0 :(得分:1)

  

要创建或显示包含空格或特殊字符的变量名称,请将变量名称括在大括号中。这会指示PowerShell按字面解释变量名称中的字符。

前:

${save`items} = "a", "b", "c"

参考:https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_variables?view=powershell-5.1

答案 1 :(得分:0)

`是转义字符。直接在它之后的任何东西都将按原样处理。 因此`ServerAdminProxy被视为附加输入或函数调用。

使用$ Script:WSUSAdminProxy,:将导致$ Script被视为目录又名D:

我不确定你是如何存储你想要检索的值,但你应该远离变量名中的特殊字符,如`:\'“,并坚持使用字母数字字符和下划线(_)