如何从命令提示符或批处理文件中将具有长名称的组添加到本地组?

Ale*_*lex 7 powershell batch-file active-directory

当尝试添加名称长度超过20个字符的全局组时,net.exe我收到错误消息,说明语法不正确,如下所示:

C:\>NET.EXE localgroup MyRemoteUsers "really-long-group-name-here" /ADD

The syntax of this command is:

NET LOCALGROUP [groupname [/COMMENT:"text"]] [/DOMAIN]
groupname {/ADD [/COMMENT:"text"] | /DELETE}  [/DOMAIN]
groupname name [...] {/ADD | /DELETE} [/DOMAIN]
Run Code Online (Sandbox Code Playgroud)

Microsoft在此处记录了此问题.我需要这个在标准的.cmd批处理文件中工作.有一个简单的解决方法吗?

Ale*_*lex 9

您可以在批处理文件中使用powershell,如下所示:

powershell -command "& { ([adsi]'WinNT://./your-local-group,group').Add('WinNT://YOURDOMAIN/your-really-long-global-group-name,group'); }"
Run Code Online (Sandbox Code Playgroud)

上面的一个技巧是在命令中使用单引号时对整个命令使用双引号.这允许您从cmd.exe.bat/.cmd文件或其中运行语句.