15K+ 次浏览
要检查计算机是否连接到任何域,我们可以使用多种方法。在这篇文章中,我们将使用两种方法。一种是使用计算机的系统信息,另一种是使用 DirectoryServices .Net 类。第一种方法使用系统信息并筛选出一个名为“Domain”的字符串,该字符串显示计算机是在域中还是在工作组中。systeminfo | findstr "Domain" 输出如果计算机在工作组中,它将显示工作组名称。例如,在第二种方法中,我们将使用目录服务 .Net 类方法名称 GetComputerDomain()。如果服务器未连接到… 阅读更多
2K+ 次浏览
要将计算机从域中移除,我们需要使用 Remove-Computer 命令。Remove-Computer -ComputerName Test1-win2k16 -UnjoinDomainCredential Labdomain\Administrator -WorkgroupName WG -Restart -Force -PassThru 在上面的示例中,计算机名称 Test1-Win2k16 将使用域凭据从域中移除,并将加入名为 WG 的工作组。如果由于任何原因系统未重新启动,则需要手动重新启动系统。这里的计算机名称是 String[]。因此,您可以提供多台计算机以从域中移除。例如,Remove-Computer -ComputerName Test1-win2k16,… 阅读更多
要使用 PowerShell 将任何工作组计算机加入域,我们可以使用 Add-Computer 命令,但在那之前,有一些 Windows 先决条件,即必须正确配置 DNS,并且域控制器应该可以访问,其他条件也应该满足,只有这样 PowerShell 才能使用该命令将计算机加入域。Add-Computer -ComputerName Test1-win2k16 -DomainCredential Labdomain\Administrator -DomainName Labdomain.local -Restart -Force -PassThru 一旦运行上述命令,它将提示您输入您输入的用户的凭据。在上面的示例中,我们将… 阅读更多
647 次浏览
要使用 GUI 创建任务(如下面的图像所示),我们需要一些设置,例如任务的名称、触发器和操作。类似地,使用 PowerShell 在任务计划程序中创建新任务包括多个设置。任务名称任务触发的时刻操作 - 我们是否需要安排程序执行或在某些事件触发时发送电子邮件。描述 - 这是可选的。您可以添加任务的描述。注册任务 - 最后一步是注册已创建的任务。以上所有操作都使用不同的 cmdlet,但它们是 ScheduledTasks 模块的一部分。要… 阅读更多
1K+ 次浏览
要使用 PowerShell 启动任务计划程序的特定任务,我们需要使用 Start-ScheduledTask 命令。当我们运行上述命令时,我们需要提供任务名称。例如,Start-ScheduledTask -TaskName 'FirstTask' 当您检查上述任务状态时,示例 Get-ScheduledTask -TaskName 'FirstTask' 输出:TaskPath TaskName State -------- -------- ----- \ FirstTask Running 要在远程计算机上启动任务,我们首先需要连接到远程计算机的 CIMSession,我们可以使用以下命令。$sess = New-CimSession -ComputerName Test1-Win2k12 Get-ScheduledTask -CimSession $sess -TaskName 'FirstTask' | Start-ScheduledTask 我们也可以使用 CIMSession 直接使用命令 Start-ScheduledTask 启动任务。Start-ScheduledTask -TaskName 'FirstTask' -CimSession $sess阅读更多
17K+ 次浏览
要使用 PowerShell 检索任务计划程序中现有的任务,我们可以使用 PowerShell 命令 Get-ScheduledTask。我们可以使用任务计划程序 GUI 来检索计划的任务。要使用 PowerShell 检索,请使用 Get-ScheduledTask 命令。当我们使用上述命令时,它还会从不同的路径/文件夹中检索所有任务,包括根路径。要检索在根路径下创建的任务,我们需要筛选任务路径,Get-ScheduledTask | where{$_.TaskPath -eq "\"} 如果我们需要检索特定任务,则需要筛选任务名称,TaskPath TaskName … 阅读更多
734 次浏览
有两种方法可以安装 PowerShell 模块。在线和离线。在线方法此方法就像通过 Unix 系统中的 Yum 下载在线包一样。我们首先需要使用 Find-Module 命令搜索互联网上可用的包。如果您不知道完整的模块名称,可以使用通配符。所有包都是从 PowerShell 库 (https://www.powershellgallery.com/) 下载的。例如,如果您想要 Vmware PowerCLI 模块并且您不知道完整的模块名称,则只需在通配符 (*) 中使用名称的一部分即可。Find-Module *vmware* | Select Name, Version, RepositoryName … 阅读更多
Javascript 对象表示法 (JSON) 是一种轻量级结构,易于被人阅读,也易于机器解析和理解。尽管名称包含 Javascript,但 Javascript 和 JSON 是不同的,它们的语法和结构也不同。您可以获得有关 JSON 的更多信息 https://www.json.org/json-en.html 它的基本结构是键值对,但两者都由冒号“:”分隔。它具有与哈希表 PSCustomObjecct 几乎相同的结构。例如,{ "Name": "Albert Don" } 如果您有多个键值对,则可以使用逗号将它们分隔。例如,{ "Name": "Albert ... 阅读更多
469 次浏览
在 PowerShell 中,当您创建复杂的脚本或函数时,为最终用户创建帮助以轻松理解您的脚本功能应该至关重要。编写基于注释的帮助或基于 XML 的帮助,最终类似于 cmdlet 或函数的 Get-Help 语法,这是帮助的在线版本。例如,只需打开 PowerShell 控制台并运行以下命令。Get-Help Get-WmiObject 您可以看到输出中的各种帮助部分,例如 NAME、SYNOPSIS、SYNTAX、DESCRIPTION、PARAMETER、LINK。这些称为关键字。我们可以手动将所有这些包含在脚本或函数中以获得… 阅读更多
3K+ 次浏览
我们可以使用 PowerShell 删除已连接的 RDP 会话,为此,我们可以在 PowerShell 中使用 cmd 命令“reset session”。让我们看看它支持的参数。示例 PS C:\> reset session /? 重置会话子系统硬件和软件以使其恢复到已知的初始值。RESET SESSION {sessionname | sessionid} [/SERVER:servername] [/V] sessionname 标识名称为 sessionname 的会话。sessionid 标识 ID 为 sessionid 的会话。/SERVER:servername 包含会话的服务器(默认为当前服务器)。/V 显示其他信息。我们可以在此处提供会话… 阅读更多