是否有用于管理 COM+ 组件的 PowerShell 模块或命令?特别是,我想:
我是 PowerShell 和 COM+ 的新手,所以可能使用了错误的术语(安装与注册等)。
我需要使用 PowerShell 比较开发环境和生产环境之间已安装的补丁。我怎样才能做到这一点?
我正在尝试从脚本中Task Scheduler的本地计算机打印信息,PowerShell以便其他用户也可以打印此信息而不必访问Task Scheduler. 我需要脚本打印出来
我可以打印出有关名称、下次运行时间和上次运行时间的信息,但在运行脚本时不会打印出其余的信息。
我已经对我的脚本有了一个小小的开始,并把字段放下了。
$schedule = new-object -com("Schedule.Service")
$schedule.connect()
$tasks = $schedule.getfolder("\").gettasks(0)
$tasks | select Name,Status,Triggers,NextRunTime,LastRunTime,LastRunResult,Author,Created | ft
foreach ($t in $tasks)
{
foreach ($a in $t.Actions)
{
$a.Path
}
}
Run Code Online (Sandbox Code Playgroud)
任何帮助或建议将不胜感激。
以下是我正在寻找的内容以及哪些字段未打印出数据的屏幕截图:

powershell windows-server-2008 task-scheduler windows-server-2012
我遇到了一个完整的障碍,无法弄清楚如何在IIS 8. 我一直在检索应用程序和空的空参数错误,只是找不到让虚拟目录列出的方法。
我需要以下数据来列出有关虚拟目录的信息:
下面是我一直在使用和弄乱的代码:
*See revised code below*
Run Code Online (Sandbox Code Playgroud)
我还使用该Appcmd.exe命令尝试列出虚拟目录:
C:\Windows\System32\inetsrv\appcmd.exe LIST VDIRS
Run Code Online (Sandbox Code Playgroud)
但我仍然没有得到我需要的输出。任何或任何帮助将不胜感激!谢谢!
通过注释几行来列出我的虚拟目录,但它只打印出名称和:
我仍然不知道,以下是修改后的代码:
Import-Module WebAdministration
$Websites = Get-ChildItem IIS:\Sites
foreach($Site in $Websites)
{
$webapps = Get-WebApplication -Site $Site.name
$VDir = Get-WebVirtualDirectory -Site $Site.name #-Application $webapps.name
foreach($webvdirectory in $VDir)
{ …Run Code Online (Sandbox Code Playgroud) 已经为此苦苦挣扎了几天了。
我收到以下错误:
PS C:\> get-process -ComputerName Win2012r2
get-process : Couldn't connect to remote machine.
At line:1 char:1
+ get-process -ComputerName 10.10.1.54
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Get-Process], InvalidOperationException
+ FullyQualifiedErrorId : System.InvalidOperationException,Microsoft.PowerShell.Commands.GetProcessCommand
Run Code Online (Sandbox Code Playgroud)
我已经确认远程注册表服务正在服务器上运行(我也尝试重新启动它)。
此外,我创建了一个自定义防火墙规则,允许每个/sf/ask/1564994441/在端口 5985 && 5986 上建立 RCP 连接。 命令做
我还仔细检查了每个Powershell Get-Process 无法连接到远程计算机的用户名
笔记
invoke-command -ComputerName Win2012r2 -ScriptBlock {Get-Process}工作正常,但我真的需要让这个get-process -computername过程直接工作,因为它在其他人使用的另一个脚本中失败了
我需要一个 powershell 脚本,以使用电子邮件地址获取登录名。我有一些用户的电子邮件地址的便条。我想获取域中用户的登录 ID 和帐户信息。任何人都可以对此提供帮助。
问候,卡西克。
powershell windows-server-2008 active-directory user-management
Powershell cmdlet 会Test-Cluster查询大量数据并执行验证测试,然后将这些测试打包成一份漂亮的报告。如果您运行,Test-Cluster -List您将获得一个项目列表,您可以使用 cmdlet 单独查询。当您阅读DisplayName's时,有一个通用的命名方案。它们都以"List"或"Validate"开头。
显然,“验证”将通过失败来实际测试故障转移。但是将某些东西命名为“列表”让我认为它只是对数据运行时的查询。我已经使用以下脚本对此进行了测试:
$TestList = Test-Cluster -List | Where-Object {$_.DisplayName -like "List*"}
Test-Cluster -Include $TestList.DisplayName -ReportName "c:\cluster reports\report"
Run Code Online (Sandbox Code Playgroud)
在生成此报告时,我没有看到任何记录的集群错误或注意到任何故障转移活动。Microsoft technet 对此也不是很清楚,但他们确实推断这种行为与我的想法一致。请参阅此摘录(强调我的):
测试结果以您指定的文件名记录在一个文件中。通过运行验证测试,您可以确认您的硬件和设置与故障转移群集兼容。有多种类型的测试,包括集群、库存、网络、存储、系统和其他类型的测试。存储测试不会测试集群角色正在使用的联机磁盘或存储池。要测试此类磁盘,请先运行 Stop-ClusterGroup 以停止群集角色,然后运行 Test-Cluster。测试完成后,再次启动集群角色,也称为资源组。
我想提醒您注意他们对“验证”一词的使用。此外,在运行该脚本时,作为输出的一部分,它说:
Test Result:
ClusterSkippedTestsCompleted
Run Code Online (Sandbox Code Playgroud)
如果包括验证测试,结果是:
Test Result:
ClusterConditionallyApproved
Run Code Online (Sandbox Code Playgroud)
在我的测试环境中,网络测试生成了一些触发条件批准的警告。我在谷歌上搜索了很多,以找到描述“验证”与“列表”拆分背后逻辑的文档,但我没有找到任何东西。这就引出了一个问题......
列表请求会触发故障转移事件吗?
Remove-WindowsFeature 和 Uninstall-WindowsFeature 有什么区别?
我在 Windows 2008 R2 机器上使用了添加和删除,但现在有安装和卸载 - 根据MSDN仅在 Windows 2012 和 8 上
我正在尝试使用 Get-ADUser 提取选定的用户集。用户属于名称包含非 ASCII 字符的公司,例如“Gåäördet”。不幸的是,我们必须使用 company 属性来完成这个任务,我们还需要它从脚本中工作。
以下在交互式会话中效果很好,但在脚本中执行时不返回任何数据:
$Company = "Gåäördet"
Get-ADUser -Filter "company -eq '$Company'"
Run Code Online (Sandbox Code Playgroud)
我找到了工作但不够可靠的解决方法(有选择错误对象的风险):
# Work-around 1:
$Company = "Gaaordet" # Replace åäö with aao in the variable
Get-ADUser -Filter "company -eq '$Company'" # Matches the company "Gåäördet", but why?
Run Code Online (Sandbox Code Playgroud)
...或者...
# Work-around 2:
$Company = "G...rdets" # Use regex for åäö
Get-ADUser -Filter * -Properties Company | ? Company -match "$Company"
Run Code Online (Sandbox Code Playgroud)
附加说明:字符编码可能不是这里的问题。正如评论中所建议的,我将其放在脚本中。阅读每个 Get-ADUser-line 的注释:
$OutputEncoding = [Console]::OutputEncoding
$Company = "aao"
Get-ADUser -Filter "company -eq '$Company'" # …Run Code Online (Sandbox Code Playgroud) 我目前正在尝试自动构建运行 Windows Server 2012 R2 的 VM。目前的挑战是自动化添加角色和功能。在角色和功能向导中,有一个选项可以导出可在 PowerShell 中运行的 XML 配置文件。
但是,在查看 XML 文件后,我可以看到它特定于它正在运行的服务器 - 它包含诸如“ComputerName”之类的字段。
如果我想运行一个在许多 VM 上安装角色和功能的脚本怎么办?我需要一个通用的配置文件,而不是针对特定计算机进行个性化。
有没有人对这个问题有意见?