使用powershell,我打算在远程主机上运行许多function来收集信息。 下面是一个例子,通过运行一个名为getcontentfile的函数来远程检索文件的内容,该参数作为远程主机的名字: function getcontentfile { [CmdletBinding()] param($hostname) $info = Get-Content "C:\fileinfo.xml" write-host $info } 此函数应该将有关远程主机的信息返回给PowerShell的本地实例。 我怎样才能修改这个脚本来做到这一点?
我需要协调displayName和CN属性到AD中的givenName和surName字段。 是否有可能采取givenName和surName并重命名显示名称和CN使用Powershell?
我如何确保default.aspx是我的IIS网站的第一个默认文档? 我努力了: Add-WebConfiguration //defaultDocument/files "IIS:\sites\Default Web Site\MyWebSite" -atIndex 0 -Value @{value="Default.aspx"} 但如果default.aspx已经在列表中抱怨 Add-WebConfiguration : Filename: Error: Cannot add duplicate collection entry of type 'add' with unique key attribute 'value' set to 'Default.aspx' 如果有必要,我如何添加它并将它移动到列表顶部?
我不太确定这是否可行,但是我需要强制某个安全组的用户使其密码过期,以便在下次login时强制更改密码。 原因是因为我将FGPP(密码策略)应用于这个特定的组,以执行强密码。 那么,许多用户的密码真的很脆弱,除非被迫,否则不会被改变。 有没有办法做到这一点,而不强迫每个人都只有一个密码?
什么是通过使用PowerShell来设置新磁盘(初始化,分区和格式化)的基本示例?
我的脚本中有一个Param块 Param ( [Parameter(Mandatory=$True)] [string]$FileLocation, [Parameter(Mandatory=$True)] [string]$password = Read-Host "Type the password you would like to set all the users to" -assecurestring ) 我可以在必需的参数字段中使用读主机CmdLet吗? 如果不是我能做些什么来确保我采用正确types的variablestypes,那么我可以将其传递给用户创build过程?
我正在尝试执行AD的PowerShellsearch,以查找在过去30天内已经login的计算机(而不是服务器或其他)。 我写了大部分的脚本,除了限制30天的部分。 任何帮助将不胜感激。 Get-ADComputer -Filter * -Properties * | FT名称,OperatingSystem,LastLogonDate -Autosize | Out-File C:\ Temp \ ComputerLastLogonDate.csv
我有一个在Windows Server 2008 R2上运行的Web应用程序,它有大量的计划任务来处理所有的后端工作。 当我做一个触及数据库的软件部署时,我需要禁用所有的计划任务。 目前我有一个很长的清单,我需要手动进行,当我去时禁用每个计划的任务 – 当然这是一个成熟的与Powershell自动化的工作。 不幸的是,Powershell文档对于如何禁用现有的计划任务(当然,一旦发布成功完成后重新启用它)似乎相当费解。 我可以获得已准备就绪,正在运行或已禁用的任务列表,但下一步是什么?
我们遇到了一个IIS 7.5的问题,我们有一个简单的部署系统,它由以下部分组成: 创build一个新的webroot的zip文件,由三个文件夹组成: Api Site Manager 这是解压缩到一个新的文件夹(假设我们称之为“SITE_REV1”),并包含一个脚本调用以下(每个webroot一个): C:\Windows\system32\inetsrv\appcmd set vdir "www.site.com/" -physicalPath:"SITE_REV1\Site" 这通常工作,在9/10次。 在某些情况下,webroot似乎正确更新(如果我检查IISpipe理器中的基本设置,path看起来是正确的),但运行的网站实际上是指向旧的位置。 我们设法“修复”的唯一方法是运行IIS重置。 回收有问题的应用程序池是不够的。 有时似乎甚至有必要重新启动,但我不是100%确定这是准确的(我自己并不总是解决问题)。 我使用Powershell和Webpipe理模块重写了脚本,希望appcmd中有一个小故障,但同样的问题发生。 Set-ItemProperty "IIS:\Sites\www.site.com" -Name physicalPath -Value "SITE_REV1\Site" 有没有人经历过这样的事情? 有谁知道发生了什么事情,我能做些什么来防止这个问题? 进行IIS重置对我们来说并不是一个好的select,因为每次我们尝试在单个站点上部署更改时,都会影响服务器上的所有站点。 编辑:我们已经确定,在IISpipe理器中的站点(而不是应用程序池)的启动/停止解决了错误的物理path,但如果我停止使用appcmd的站点,更改物理path,然后启动它,我仍然遭受同样的问题。 我在空白处
通过PowerShell Web访问,您可以selectauthenticationtypes。 默认情况下,它使用Default ,最终是Negotiate 。 我已经设置了CredSSP以允许使用CredSSPlogin到PSWA服务器本身,以便networking身份validation在会话内工作(避免了双跳问题,而无需在整个networking中委托凭证)。 无论如何,我希望CredSSP成为login页面的默认选项。 查看IIS中PSWA Web应用程序的configuration选项,可以设置几个值来覆盖默认值。 其中之一被称为defaultAuthenticationType ,它是一个string但被设置为0 。 这似乎是正确的设置,但我不能得到它的工作。 如果我检查login网页,我可以看到,select框具有以下值: 0 Default 1 Basic 2 Negotiate 4 CredSSP 5 Digest 6 Kerberos 3缺失。 如果我将defaultAuthenticationType设置为一个数字,那么网页默认为一个新的选项: 7 Admin Specified 我已经尝试了3和4 ,但都没有工作。 login是使用Kerberos进行的,CredSSP未使用。 如果我手动selectCredSSP,则按预期工作。 如果将defaultAuthentcationType设置为像CredSSP这样的string,则不会显示“ Admin Specified选项,并且它只是再次默认为“ Default ,并且仍使用Kerberos身份validation。 有没有人能够成功设置这个? networking结果一直非常缺乏。