Articles of PowerShell

电源shell; pipe道标准输出到命令行

作为一个例子,我想下面的命令把一个dir列表与所有子目录StdOut @' >> -R >> '@ > .\test >> dir `test` 所以,在前四行之后,当前目录中有一个名为test的文件,其中包含-R (recursion)。 第四行当然不起作用,但我想结果是一样的 dir -R 。 第3行也许更好 echo `test` 我希望结果是 /s

在Windows 2008 R1上使用PowerShell 2和模块的IISpipe理

我有一个PowerShell 2脚本来自动注册托pipe模块与IIS7。 使用PowerShell 2,我使用了import-module webadministrationpipe理而不是pipe理单元。 安装PowerShell 2时,是否可以在Window Server 2008 R1上安装IIS7 Webpipe理模块(而不是pipe理单元)? 如果是这样,怎么样? 这将有简化我的脚本的好处,否则,我将需要尝试针对两个不同的服务器平台。

可以使用powershell来安装IIS 6的SMTP服务并configuration选项

我想在Windows Server 2003上安装IIS 6的SMTP服务。graphics用户界面过程在technet上进行了解释。 然后我想configuration属性(例如第一个重试间隔)并创build新的域等。 我可以脚本使用PowerShell(或任何其他scrpting这个问题)。 如果是,你可以指点我一些资源,甚至给我一些脚本样本,让我开始。

缺lessMailboxFolderPermission cmdlet

我试图在Exchange Server 2010上使用Exchange命令行pipe理程序修改日历权限。但是 – 我没有看到cmdlet设置/获取/添加-MailboxFolderPermission( http://technet.microsoft.com/zh-cn/library/ff522363 .aspx )之间 – 如果我列出所有交换相关的cmdlet(get-excommand),我看到例如这些: … Function Set-MailboxDatabase … Function Set-MailboxDatabaseCopy … Function Set-MailboxJunkEmailConfiguration … Function Set-MailboxMessageConfiguration … … 没有Set-MailboxFolderPermission cmdlet。 问题是 – 我在这里错过了什么? 为了logging,我想遵循本指南: http : //thoughtsofanidlemind.wordpress.com/2010/09/22/calendar-sharing-owa-2010/ ,它是RTM版本,而不是SP1。 谢谢!

有了Powershell,我怎样才能得到一个特定用户拥有的进程的ID?

使用Powershell,我想要做相当于Unix ps -auxc | grep Emacs kill -9 364 (假设365是第一个命令告诉我的pid) 我怎么做? 我发现很难让Powershell告诉我一个进程的所有者和我尝试的方式,得到一个wmi对象的win32_process,然后把它放到一个名为“explorer.exe”的进程列表中,只是启动了大量的explorer.exe实例。

Powershell FTP脚本错误:远程服务器返回错误:227进入被动模式

我有Powershell FTP脚本问题。 我已经把头发拉出来了。 我最近为我的软件项目设置了一个“自动构build服务器”。 所有软件项目都被构build并捆绑到一个zip文件中。 理论上,这个zip文件将通过FTP下载到几个不同的服务器上。 我想build立一个PowerShell脚本,将下载我的软件包,并将其解压缩到所需的目录。 我有问题的部分是通过FTP下载文件。 我可以通过DOS命令窗口手动login到FTP来访问源文件。 我可以下载文件就好了,所以我知道这不是一个防火墙问题。 至less我不认为这是。 每当powershell开始下载源.zip文件,它挂起。 我可以看到文件出现在硬盘上,但是当脚本失败时会消失。 它永远不会从FTP服务器获取任何字节。 然后我收到这个错误: Powershell FTP脚本错误:远程服务器返回错误:227进入被动模式(10,255,130,77,231,5)Blockquote 这是我的脚本: #create destination directory (this is where the build files will be dropped) [IO.Directory]::CreateDirectory("C:\tempftp") "Creating staging folder…" #create staging folder for deployment package bundle unzip [IO.Directory]::CreateDirectory("C:\FINALDEPLOYMENTFOLDER") #create destination and source paths for FTP copy command $File = "C:\tempftp\MyPackageT.zip" […]

如何使用Powershell更新IIS6中的HTTP自定义标头?

我有以下Powershell脚本,它使用WMI来更新IIS 6中网站上的HTTP自定义标头。 该脚本似乎工作正常,没有产生错误,并由此产生的$网站对象正确显示更新的HttpCustomHeaders值。 但是,当我在IIS中查看该网站时,值尚未更新。 这也是通过访问该网站并在Firebug中查看标题来validation的 – 值不会被保存。 任何想法我做错了什么? $website = Get-WmiObject -Class IIsWebServerSetting -Namespace "root\microsoftiisv2" -ComputerName $computerName -filter "ServerComment = '$websiteName'" -Authentication 6 $headers = $webSite.HttpCustomHeaders $headers[0].Keyname = 'P3P: policyref="http://somewebsite.com/p3p.xml", CP="IDC DSP COR CUR DEV PSA IVA IVD CONo HIS TELo OUR DEL UNRo BUS UNI"' $headers[0].Value = $null $website.HttpCustomHeaders = $headers $website.Put() 我不止是打开一个替代脚本,它提供了一个更好的方式来设置这个值,上面假设已经有至less一个头文件了。 我也试过Set-WmiInstance […]

复制目录结构与date文件筛选到UNC在PowerShell中共享

如何将所有匹配filter和目录结构的文件复制到UNCpath将powershell: 例如,将filter设置为"*2011_01_02*.bak" : \arf.2011_01_02.bak \foo\baz\arf.2011_01_02.bak 到\\192.168.1.1\meow\的结果是: \\192.168.1.1\meow\arf.2011_01_02.bak \\192.168.1.1\meow\foo\baz\arf.2011_01_02.bak

用powershell列出_all_ AD用户属性

我们有一个以前的Win2k AD域,这个域被迁移到W2k3服务器,并且有过去和林中各个部分的模式扩展(Exchange,msSFU和自定义)。 search用户工作得很好,我得到了完整的用户列表。 但是,如果我查询用户对象,我只得到一个不完整的属性列表: $user.properties.propertynames 提供 objectClass cn distinguishedName instanceType whenCreated whenChanged uSNCreated uSNChanged name objectGUID userAccountControl badPwdCount codePage countryCode badPasswordTime lastLogoff lastLogon pwdLastSet primaryGroupID objectSid accountExpires logonCount sAMAccountName sAMAccountType objectCategory isCriticalSystemObject nTSecurityDescriptor 这个响应缺lessAD Explorer显示的一些属性。 我如何列出真正存在的所有属性和值? 任何其他的提示,除了Powershell之外,还有一个工具可以实现吗? 背景:我们需要检查用户对象的一致性。 看起来,如果对象是用W2k创build的,则用户拥有比在W2k3 ADUC上设置的属性更完整的一组属性。 似乎出现了一些问题,但我还不确定,并希望检查用户属性的健全。 我知道如何使用$ objSearcher.PropertiesToLoad.Add()。 但是这样做没有任何帮助,因为我也想查找是否有潜在的某些用户对象中存在的未知属性。 一些旧的用户对象最多有150个属性。 但并不是所有的老用户都有相同的设置。 我想知道谁有什么。 我怎样才能得到任何对象上使用的可用属性的总列表?

脚本检查msi安装程序的特定function

我需要能够从msi安装程序检查特定function的安装。 对于上下文,我需要检查是否从Team Foundation Server 2010电源工具安装程序(tfpt.msi)安装了“Powershell Cmdlet”function(来自Orca中function表的TFPS)。 我知道如何使用WMI win32_product和产品代码{B6DC31D8-A303-4D14-9C88-59F183F55BEC}来检查产品本身的安装情况,但是TFPSfunction默认情况下甚至不会安装,所以它很常见。 这可能吗?