Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell 如何在网络上搜索不属于我的域的计算机和设备?_Powershell - Fatal编程技术网

Powershell 如何在网络上搜索不属于我的域的计算机和设备?

Powershell 如何在网络上搜索不属于我的域的计算机和设备?,powershell,Powershell,我是一名网络管理员,正在尝试使用PowerShell自动化一些事情,我正在尝试自动化的一项任务是将计算机添加到我的域中,并重命名所述计算机。我的公司经常有新电脑,我不想看所有的菜单。我有一个脚本,可以做到这一点,但我想能够查询计算机和设备不在我的领域,所以我可以轻松地添加它们。我知道Env:Userdomain,但我不知道如果计算机没有加入AD,我如何查询它们。有什么方法可以在PS中这样做吗 此外,我希望避免重新输入我要加入域的每台计算机的凭据。是否有一种方法可以存储我的用户名和密码,并在输入一

我是一名网络管理员,正在尝试使用PowerShell自动化一些事情,我正在尝试自动化的一项任务是将计算机添加到我的域中,并重命名所述计算机。我的公司经常有新电脑,我不想看所有的菜单。我有一个脚本,可以做到这一点,但我想能够查询计算机和设备不在我的领域,所以我可以轻松地添加它们。我知道Env:Userdomain,但我不知道如果计算机没有加入AD,我如何查询它们。有什么方法可以在PS中这样做吗


此外,我希望避免重新输入我要加入域的每台计算机的凭据。是否有一种方法可以存储我的用户名和密码,并在输入一次凭据后自动继续操作?

当您说“查询计算机”时,我不确定是否理解您问题的第一部分。您可以在Invoke命令cmdlet中使用Add Computer cmdlet将计算机远程添加到域。从来没有试过

对于凭据问题,许多powershell命令都有-credential参数。您可以收集您的creds一次并将其传递给循环脚本,如:

$creds = Get-Credential
For Each ($i in $collection)
{
   My-Cmdlet -Credential $creds
}

另一种选择是创建一个对象,但您必须以纯文本存储您的凭据

保持DHCP池较小,在域上设置计算机时为其分配一个静态IP,并扫描DHCP池范围。任何东西都应该有一个非加入域的机器。你误解了我的问题。我正在寻找网络上的设备,但不是Active Directory系统的一部分。theMadTech现在和将来都提供了一种解决此问题的方法。我相信他没有误解。然而,就解决方案而言,你的问题确实很广泛。如果这些机器不受控制,那么谁来说这些机器的防火墙状态呢。你问了两个问题1。如何找到非域计算机,然后2。如何将它们远程添加到域中。如果您有网络资源清册软件,如果您对本地管理员使用相同的密码,则前者可能更容易使用凭据集扫描IP。您可以使用DHCP查看具有不同名称的计算机吗?如果要将它们添加到域中,我将对它们进行物理访问以启用远程处理。此外,在这一点上,提出的解决方案实际上是不可能的。现有的基础设施太多了。这不是我自己设置的。我的意思是我想搜索那些在网络上但在域之外的计算机。第二部分很有帮助。谢谢。它们已经在DNS中注册了吗?没有。关键是要使在我的组织获得新计算机时,向域中添加新计算机的过程尽可能简单和快速。此外,foreach的凭据必须包装在另一个foreach中,因为我已经查看了一组计算机名。我认为这可能会破坏逻辑。这一点,你的建议会同时处理用户名和密码吗?