Articles of PowerShell

Exchange 2013:每周消息计数

我有一个经理需要检查员工发送和接收消息的数量,因为员工说他们得到了太多的邮件相比,在公司的其他人。 我一直在线上检查一个脚本或免费工具,可以只显示我的帐户有问题的邮件数收到和发送,但似乎没有任何工作正常,因为我不是很擅长脚本我似乎无法进行更改以帮助。 我发现最近的是: Get-MessageTrackingLog -Recipient [email protected] -Start "02/22/2015 12:00:00 AM" -End "02/28/2015 11:59:59 PM" | Group-Object -Property:EventId | Sort-Object Count -Desc | Select Name,Count | export-csv C:\user-mail-count.csv 但是,当我运行它对我的帐户进行testing时,似乎不匹配我的帐户显示,因为它表示在发送46消息在时间范围内发送。 任何帮助编辑或新的脚本或免费工具,可以帮助将不胜感激。

检查将安装哪些Windows更新

我pipe理一个服务器的Windows 2012约2年没有更新,估计对全球更新的影响,我想知道有多less更新和下一次将激活Windows更新安装哪些,和大小全球更新将被下载。 怎么办? (最好是由于核心服务器的PowerShell)

如何使用PowerShell GPO cmdlet设置文件安全性?

我需要自动创build多个安全组,然后创build并应用包含OU /安全组特定文件权限和审核的GPO。 我已经完成了OU和组创build。 我可以将权限/审计作为ACL来执行,但是需要将其作为GPO应用。 我可以链接到OU /组,我可以复制现有的GPO,但是我仍然需要replace某些安全组。 我确实为每个安全组创build了registry项,但我找不到任何有关创build文件权限/审计的文档。 案例:我们推出分配给特定客户端的虚拟Web服务器。 我们有一个PS脚本,为新服务器创build新的OU和安全组。 如果我们需要重新部署虚拟机,而不是必须重新应用带有ACL的PS脚本,我们希望自动创build包含默认文件夹ACL的GPO,这样我们就不必在一旦虚拟机备份,重新部署。 我有ACL脚本,并且工作正常,但在这种情况下它不适合自动化。

通过GP部署的计划任务,通过AD服务帐户在networking共享上运行PowerShell脚本

我创build了一个运行Chocolatey更新的PowerShell脚本,以及在本地和networking共享上进行一些日志logging。 脚本本身驻留在networking共享上,我希望能够让客户从那里运行它。 这个想法是我部署计划任务通过GPO运行脚本。 我已经尝试过,如计算机策略和用户策略,并在计划任务GPO gui中定义活动目录服务帐户。 对于操作,我select了powershell.exe -NonInteractive -WindowStyle Hidden -ExecutionPolicy bypass -file \\networkshare\scripts\script.ps1 在安全选项下,我定义服务帐户来运行任务并选中“运行用户是否login”和“以最高权限运行” 此服务帐户,为解决问题的目的是OUADMIN组,我确认该帐户有权访问networking共享。 我将GPO应用到我的机器,检查事件日志,我发现这个错误: Chocolatey Sch Task Testing {BDF8E170-C909-4115-8909-D42792DF977A}组策略对象中的计算机“ChocoUpdate”首选项不适用,因为它失败,错误代码为“0x80070005访问被拒绝”。 这个错误被压制了。 我在这里错过了什么? 有一个更好的方法吗?

Windows Server 2008中的Set-NetFirewallRule替代方法

我试图在Windows Server 2008上启用Powershell Remoting,但是据我所知,默认的防火墙例外是,只有当计算机(客户端和服务器)驻留在同一本地子网中时,才允许PSRemoting。 如何删除Windows Server 2008中的本地子网限制。我知道在2012年及以上的服务器上,你可以这样做: Set-NetFirewallRule –Name "Name" –RemoteAddress Any 如何在Windows Server 2008中完全相同的事情?

使用Service Start运行PowerShell脚本

我想在启动时设置一个服务进程的Affinity和Priority ( 无需修改服务/进程代码,我不拥有代码,这是第三方服务)。 我知道我可以这样做: $Process = Get-Process MyService $Process.ProcessorAffinity = 4 在PowerShell中更改进程的相关性或在命令path前加上: cmd.exe /c start "Some Process Name" /affinity 4 但是,这些都不适用于每次启动服务时自动更改服务的进程的相关性和Priority )如何在不使用某些第三方应用程序的情况下重新启动时保持进程亲和性(我真的很喜欢自己编写/创build一个解决scheme,而不是依靠另一个应用程序来“configuration”窗口)。

从Active Directory中导出所有组和组成员

我相对比较新的PowerShell,并试图获得与他们各自的成员在域中的所有组的列表。 以下是我现在正在处理的内容: Import-Module ActiveDirectory $OutPutFile = New-Item -type file -force "AllGroups.txt" #Filters for Groups # 2 Global distribution group # 4 Domain local distribution group # 8 Universal distribution group # -2147483646 Global security group # -2147483644 Domain local security group # -2147483640 Universal security group $D = [System.DirectoryServices.ActiveDirectory.Domain]::GetCurrentDomain() $Domain = [ADSI]"LDAP://$D" $Searcher = New-Object […]

findPowerShell的负载设置在哪里

在公司机器上,无论何时试图打开Powershell,Powershell都会向域控制器发送很多请求。 如果机器在networking上,则会发现这种情况,但是如果没有,则只需要花费很长时间才能执行,而且每个命令执行之前都会发生这种情况(即在input命令之后,input每个命令后都会发生超时)。 我在以下地方查看这些电话的来源: %WINDIR%\ SYSTEM32 \ WindowsPowerShell \ V1.0 \ profile.ps1 %WINDIR%\ SYSTEM32 \ WindowsPowerShell \ V1.0 \ Microsoft.PowerShell_profile.ps1 %UserProfile%\ My Documents \ WindowsPowerShell \ profile.ps1 %UserProfile%\ My Documents \ WindowsPowerShell \ Microsoft.PowerShell_profile.ps1 但是这些文件都不存在。 这些设置/脚本还会在哪里引起这些调用呢? 如果重要的话,我迄今为止的debugging方式是怀疑networking超时,然后使用wireshark查看请求超时。 可能还有更多的尝试联系域控制器。

通过命令行/ Powershell提取GPO

我正在写一个脚本通过PowerShell,我想提取整个地方的政策。 我了解secedit只会提取帐户政策,唯一的方法是通过转到本地安全政策并右键单击“本地政策”并单击导出列表。 这使我能够得到一个文件,我可以在哪里工作。 有没有办法通过命令行来做到这一点?

Powershell DSC – Info 1625.系统策略禁止此安装

我正在使用Powershell所需的状态configuration来设置服务器。 服务器需要安装SQL客户端msi。 作为login用户,我可以点击msi,并安装它没有任何问题。 但是,当我尝试通过PowerShelll安装它 C:\ Windows \ system32 \ msiexec.exe / i“C:\ Users \ Djad \ Desktop \ sqlncli.msi”/ quiet / log C:\ Users \ Djad \ Desktop \ sqllog.txt 我得到以下错误。 MSI (s) (A4:4C) [22:43:59:356]: Product: Microsoft SQL Server 2012 Native Client — Installation failed. MSI (s) (A4:4C) [22:43:59:372]: Windows Installer installed the product. Product […]