Powershell 使用.bat文件自动化RDC设置

Powershell 使用.bat文件自动化RDC设置,powershell,batch-file,windows-scripting,Powershell,Batch File,Windows Scripting,我正在制作一个windows脚本来自动化我们的远程桌面设置。其想法是,用户只需点击文件,输入所需信息,就可以完成所有或尽可能多的管理部分 因此,我们过程的第一部分是将工作站添加到安全组RDS\u-Enabled\u工作站 为此,我制定了以下代码: "RDS_Enabled_Workstations" | Add-ADGroupMember -Members ` (Read-Host -Prompt "Enter PC Name") 问题是我正在添加一台计算机,为此,无论是谁运行脚本,都

我正在制作一个windows脚本来自动化我们的远程桌面设置。其想法是,用户只需点击文件,输入所需信息,就可以完成所有或尽可能多的管理部分

因此,我们过程的第一部分是将工作站添加到安全组
RDS\u-Enabled\u工作站

为此,我制定了以下代码:

"RDS_Enabled_Workstations" | Add-ADGroupMember -Members `
    (Read-Host -Prompt "Enter PC Name")
问题是我正在添加一台计算机,为此,无论是谁运行脚本,都需要在名称的末尾添加
$
,例如
workstation122$

我需要它,这样他们就可以输入工作站的名称,继续工作而不会出现错误:

Add-ADGroupMember : Cannot find an object with identity: 'workstation122' under: 'DC=blue-zoo,DC=co,DC=uk'
因为它认为它是一个用户


我试着把
$
放在括号外,但仍然有错误

"RDS_Enabled_Workstations" | Add-ADGroupMember -Members `
    $(Get-ADComputer -Identity (Read-Host -Prompt "Enter PC Name"))

啊,好的,那么你定义了对象标识。那么,它默认设置为用户是因为它在没有输入标识的情况下工作吗?不是,或者我误解了您的意思,但是-
Get-ADComputer
正在ActiveDirectory中查找对象,其中ObjectClass是
computer
标识
位是对象的名称。假设您在使用域帐户的加入域的计算机上-比较以下两行<代码>获取ADUser$env:USERNAME |选择名称、SamAccountName、对象类
获取ADComputer$env:COMPUTERNAME |选择名称、SamAccountName、对象类
是的,我理解。再次感谢,这也将帮助我以后。如果它始终是当前工作站,那么您可以使用%computername%$???