Articles of PowerShell

将关键事件ID报告给电子邮件

如何在您的域中组织或实施监控系统来监控您的工作站和服务器上的这些严重错误? Hardware Related: 7, 9, 11, 51, 52, 55 Potential HD related issue 1053 Servers too hot. Sometimes our Air conditioning breaks. 任何forms的帮助和意见都将大大地增加。 谢谢, AWT

Exchange 2010:PowerShell失败

在最近更新期间,新手系统pipe理员意外地取消了更新过程中的交换更新。 这个问题似乎是PowerShell的web服务没有正确响应。 我检查了这个文件夹,除了一个web.config文件外没有任何东西。 任何人都可以告诉我他们的C:\Program Files\Microsoft\Exchange Server\V14\ClientAccess\PowerShell文件夹中的文件是什么?

Get-Mailbox不返回所有邮箱

我正在尝试使用Vembu Storegrid设置交换邮箱备份作业,并且StoreGrid无法列出客户端的邮箱。 在解决问题时,我注意到了另一件事情:在邮件服务器上运行Get-Mailbox命令,因为备份用户只显示该帐户的邮箱,同时运行Get-Mailbox,因为我的pipe理员帐户返回出现的内容列表成为所有的邮箱。 我的服务帐户是“pipe理员”,“域pipe理员”和“域用户”的成员。 列出系统中的所有邮箱可能需要额外的权限?

PowerShell脚本邮件使用户从CSV

我有脚本 5..12 | foreach-object { import-csv "\\servername\staffdata\IT\Login Accounts\2011\AD\Year$_.csv" } | ForEach-Object { Enable-Mailbox $_.email -Database "Student Mailbox Store" } 我有一个名为Year5_2.csv在正确的文件夹中的csv。 我收到以下错误 Import-Csv:无法打开文件“\ servername \ staffdata \ IT \ Login Accounts \ 2011 \ AD \ Year5.csv”。 在线:1 char:36 任何build议,请

我在XP机器上得到Get-WmiObject:Generic Failure错误。 为了摆脱这个,需要做些什么?

我正在尝试做一个卸载应用程序,定期删除应用程序X. 访问安装在Windows机器上的应用程序的起点是通过从名为Win32_Product的WMI类中检索它们。 但是当我像这样运行基本的命令,我得到了下面的错误。 我已经search了technet和SO,但是他们的解决方法对我来说都不起作用,或者技术性太强,对我没有意义。 请帮忙。 SO链接 ps$ Get-WmiObject -class win32_product IdentifyingNumber : {09959E11-AD5D-408E-96AF-E3346954D6B8} Name : Shared Add-in Extensibility Update for Microsoft .NET Framework 2.0 (KB908002) Vendor : Microsoft Version : 1.0.0 Caption : Shared Add-in Extensibility Update for Microsoft .NET Framework 2.0 (KB908002) Get-WmiObject : Generic failure At line:1 char:14 + Get-WmiObject <<<< -class win32_product […]

发现用户通过远程脚本手动映射的networking驱动器

我正在尝试编写一个脚本,用于从文本文件中提取计算机名称,然后在远程registry中查找hkey_users \ SID \ network下的任何子项。 然后将SID转换为用户名,并将结果输出到以用户名命名的文本文件中。 'Define variables, constants and objects 'define text file and username Const ForAppending = 8 Const OverwriteExisting = TRUE dim WSHNetwork, UserString set WSHNetwork = CreateObject("WScript.Network") UserString = WSHNetwork.UserName Set objFSO = CreateObject("Scripting.FileSystemObject") Set objTextFile = objFSO.OpenTextFile _ ("" & UserString & ".txt", ForAppending, True) ' rest strComputer="localhost" Const HKEY_USERS […]

如何使用没有RegAsm的PowerShell注册DLL

我有一个ASP经典应用程序引用一些Visual Basic 6.0 COM对象。 其中一个Visual Basic 6.0 COM对象引用另一个第三方DLL。 第三方DLL需要在Windows Server 2008 R2 x64机器上注册。 我已经find脚本在GAC中注册DLL,而不使用PowerShell进行GACUTIL(参考: http ://weblogs.asp.net/adweigert/archive/2008/10/31/powershell-install-gac-gacutil-for-owershell 。 aspx )。 现在我需要注册程序集。 我在本地开发机器(x86)上同时使用了GACUTIL和RegAsm。 但是当我尝试在testing服务器上获取DLL时,我遇到了问题。 第一个问题 :没有GACUTIL。 也就是说,服务器上没有GACUTIL,我使用上面提到的脚本。 第二个问题 :RegAsm找不到程序集。 在32位.NET Framework下RegAsm找不到该DLL。 错误报告 : RegAsm:错误RA0000:无法findinput程序集“C:\ Windows \ System32 \ xxxxx.dll”或它的某个依赖项。 所以我使用了64位的变种,并工作。 但是当我运行我的应用程序时,我的事件日志中出现错误: ActiveX组件不能创build对象。 一般来说,这是因为找不到要创build的对象,这意味着托pipe对象的DLL没有正确注册。 所以我现在要做的是找出是否有使用PowerShell RegAsm的替代方法。 这是可能的,那么剧本会是什么?

如何使用Powershell将用户添加到远程计算机上的远程桌面用户列表?

我不想创build连接到远程计算机的脚本,并将特定的域用户添加到可以使用远程桌面连接到该计算机的用户列表中。 如何使用Powershell?

使用PowerShell来收集使用到SQL表中的磁盘

我有一个脚本连接到数据库获取服务器列表查询,然后使用wmi查询查询他们的磁盘空间。 现在我想把这些结果放到一个表格中。 我遇到了几个问题。 invoke-sqlcmd在后台使用一个存储过程或参数是痛苦的 – 无法让它工作。 哈希表是在下一个版本中实现的。 我打算为监控系统做这么多次,而sql方法看起来非常笨拙。 我也可以导出到一个csv和导入定期导入,但代码结构的工作方式我遇到了麻烦写一个单一的csv – 不知道如何设置一个数据结构来容纳哈希表持有我的$驱动器结果。 任何想法如何使这项工作,做一些轻松/简单? $servers = Invoke-Sqlcmd -Query "SELECT SERVERHardwareName FROM SERVERLIST_Hardware WHERE EXCLUDE = 0 and activenode = 1 or activenode is null;" -ServerInstance "sqlserver" -Database "dba_rep" $ExportPath = 'c:\temp\psout\Server-DiskSpace.csv' # going through, server by server, querying. foreach($server in $servers) { $server = $server.SERVERHardwareName + '.fullyqualified.domain' […]

Powershell – winrm使用ip地址而不是计算机名称

是否可以使用IP地址而不是计算机名称来设置winrm。 有问题的电脑只有 我只能在同一个域中为这台计算机设置winrm: winrm s winrm/config/client '@{TrustedHosts="demox"} 我想连接的计算机不能通过计算机名称访问。