首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在命令行中转义和保留参数内的双引号

在命令行中转义和保留参数内的双引号
EN

Stack Overflow用户
提问于 2022-11-29 09:16:47
回答 1查看 30关注 0票数 0

我正在使用ADMT行测试组迁移,但是当OU名称包含双引号时,迁移对于特定情况是失败的。

代码语言:javascript
复制
ADMT GROUP /n "TestGroup" /sd:Child.A.COM /sdc.CHILD.A.COM /td.COM /tdc.A.COM /to:"ParentOU/TEST!@#$%^&*()_+{}|:"<>?[]\;',./" /intraforest:yes

在cmd中,这个抛出“此时是意外的”,而在powershell中,它一直在等待更多的参数。其主要目的是将其转换为c#脚本,迁移用户/组,但在使用cmd/powershell的测试阶段失败。至少在C#中有什么方法可以做到这一点吗?

我尝试过用"“、^”、“转义双引号,但似乎没有什么效果。我还尝试将值赋值给变量,并在powershell中使用变量。使用"”(如此Escaping special characters in cmd中所建议的)是该命令唯一运行的时候,但它仍然会引发以下错误。

错误:无法迁移组。无法绑定到容器'ParentOU/TEST!@#$%^&()+{}|:<>?[];',./ /林内:是‘。无法获得'A.COM/ParentOU/TEST!@#$%^&;()+{}|:<>?[];',./ /林内:是‘的名称。*参数不正确。(0x80070057)

如果我创建了另一个OU,除了双引号之外,其他的OU都是一样的。

请帮助解决这个问题。

EN

回答 1

Stack Overflow用户

发布于 2022-11-29 10:09:34

你可以用不同的方法解决这个问题:

使用引号以外的插入符号转义字符

代码语言:javascript
复制
setlocal EnableDelayedExpansion
set "to_param=ParentOU/TEST^!@#$%^&*()_+{}|:"^^^^^<^^^^^>?[];',./"
call ADMT GROUP /to:"%%to_param%%"

主要问题将是ADMT程序,您需要知道它是如何解析参数的,特别是关于如何在参数中转义引号的规则。

您可以在\"中测试set "to_param=ParentOU...\"^^^^^<^^^^^>?[];',./"

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74611622

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档