0

我对powershell脚本不是很熟悉,我被这个问题困住了——我需要对检索到的对象进行一些操作,如下所示:

$object = [ADSI]'LDAP://CN=Test User,OU=Dept,OU=Users,DC=example,DC=org'
...
$object.Commit()

这工作正常,但我必须使用存储在变量中的专有名称 - 我的测试脚本看起来像这样,但它不起作用:

$object = [ADSI]'LDAP://$variable'
...
$object.Commit()

第一次调用 [ADSI] 本身不会导致错误,但任何以下操作都会崩溃并显示消息:

The following exception occurred while retrieving member "commit": "The server is not operational.
"
At line:1 char:10
+ $object.commit <<<< ()
+ CategoryInfo          : NotSpecified: (:) [], ExtendedTypeSystemException
+ FullyQualifiedErrorId : CatchFromBaseGetMember

我很确定,参数是以某种错误的方式发送的,但我不知道如何解决它,有人可以帮忙吗?

坦克

4

1 回答 1

5

尝试:

$object = [ADSI]"LDAP://$variable"

单引号不会扩展变量。

于 2012-05-27T02:26:51.090 回答