如何从命令行或PowerShell在Windows Server 2008 R2上安装.NET 4? 这篇文章演示了如何使用dism.exe和PowerShell为.NET 3.5做到这一点。 我猜测,由于.NET 4.0二进制文件需要先下载,这些说明不适用于.NET 4。
使用Powershell如何创build共享并设置访问权限。 例如如下 创build映射到“pathc:\ share \ foo”的名为“public”的共享 允许DOMAIN1 \ Users对共享拥有只读访问权限(这并不意味着在文件上而不是在共享上设置acl)
在回答这个问题时想到了这个问题 。 你怎样才能避免在命名空间中完全限定每一种types? 编写System.Security.Cryptography.X509Certificates.X509Store而不是X509Store ,或者[System.Security.Cryptography.X509Certificates.StoreName]::My而不是[StoreName]::My真的非常繁琐。 在C#中你有using指令…那么Powershell呢? 编辑1 – 这适用于types: $ns = "System.Security.Cryptography.X509Certificates" $store = New-Object "$ns.X509Store"(StoreName,StoreLocation) New-Object将string字面量作为types定义,因此可以通过编程方式构build。 编辑2 – 这适用于枚举成员用作参数: $store = New-Object "$ns.X509Store"("My","LocalMachine") 其中“我的”是[System.Security.Cryptography.X509Certificates.StoreName]::My和“LocalMachine”是[System.Security.Cryptography.X509Certificates.StoreLocation]::LocalMachine 。 文字名称自动转换为枚举成员,如果放置在预期的枚举成员的地方。
我正在寻找一种方法来closures计算机(本地计算机)上的所有活动的远程桌面会话。 Windows包括几个命令(rwinsta,qwinsta等)来查看活动会话,但是我看不到如何轻松地使用这些信息(除非我parsingstring…)来closures所有会话。 在PowerShell(或C#,批处理)closures本地计算机上的所有远程桌面会话有没有办法? 谢谢,马丁
我目前正在尝试自动生成运行Windows Server 2012 R2的虚拟机。 目前的挑战是自动添加angular色和function。 在angular色和function向导中,有一个选项可以导出可以在PowerShell中运行的XMLconfiguration文件。 但是,通过查看XML文件,我可以看到它是特定于它所运行的服务器 – 它包含诸如“ComputerName”的字段。 如果我想运行一个在许多虚拟机上安装angular色和function的脚本,该怎么办? 我需要一个通用的configuration文件,而不是个人计算机的个性化。 有没有人有关于这个问题的投入?
自行安装PowerShell是否有足够的function来pipe理Windows域环境和/或SQL Server? 如果不是什么好,免费或付费的,第三方附加软件?
我正在使用powercli脚本来循环访问环境中的每个数据存储,并回收精简configuration的LUN上的空间。 环境中的所有LUN均为Dell Equal Logic。 vCenter版本: 5.5.0_1750787 ESXi版本: Dell 5.5-1331820(A01) 我遇到的问题是,在脚本中执行unmap命令之后的恰好30分钟,我得到以下错误: 来自PowerCLI: Message: An error occurred while communicating with the remote host: InnerText: At \\SOMEIP\Share\folder\vmware_unmap_datastore.ps1:96 char:9 + $RETVAL = $ESXCLI.storage.vmfs.unmap(200, $ds.Name, $null) + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CatagoryInfo : OperationsStopped: (:) [], HostCommunication + FullyQualifiedErrorId : VMware.VimAutomation.ViCore.Types.V1.ErrorHandling.HostCommunication 来自:ESXi主机vpxa.log: ==> vpxa.log <== 2014-06-30T14:39:51.907Z [7265EB70 error 'vpxavpxaVmomi' opID=60e7b2a5-11] [VpxaClientAdapter::InvokeCommon] Got […]
我有一个Azure文件共享,并希望从我的Azure虚拟机中使用这个 – 使用cmdkey在虚拟机上保留凭据并使用net进行安装。 这是通过在Windows Server 2012 R2的本地PowerShell会话中运行这些命令来testing的。 但是我需要将这一步添加到Azure部署脚本中。 Azure Powershell脚本从我的笔记本电脑运行,连接到Azure订阅,并使用大量variables从头开始构build虚拟机。 想通过使用Invoke-Command将variables从Azure Powershell脚本传递到新创build的VM上的远程Powershell会话。 $Session = New-PSSession -ConnectionUri $Uri -Credential $DomainCredential $ScriptBlockContent = { Param ($Arg1,$Arg2,$Arg3) cmdkey /add:$Arg1 /user:$Arg2 /pass:$Arg3} Invoke-Command -Session $Session -ScriptBlock $ScriptBlockContent -ArgumentList ($Share,$AccountName,$Key) 而错误: PS C:\> Invoke-Command -Session $Session -ScriptBlock $ScriptBlockContent -ArgumentList ($Share,$AccountName,$Key) CMDKEY: Credentials cannot be saved from this logon session. replace为cmdkey […]
我很难搞清楚如何远程重命名Windows 7计算机。 这是为了使vSphere 5环境中的Win 7版本自动化,我试图尽可能地解决这个问题。 到目前为止,我已经设法得到一切,但机器重命名为自动化(或可自动化)。 WinRM正在工作,所以远程PowerShell方法的工作。 invoke-command -computername "W7-Img3-RPT49VA" -scriptblock {commands go here; have another one} 上面的工作。 我可以做像获取目录列表和运行命令的东西。 但是,获取域更改没有奏效。 根据这个SF问题 ,我在脚本块中尝试了以下内容: $comp=get-wmiobject -class computersystem ; $comp.rename("W7-clone-42") 返回ReturnValue : 5 ,经过多次search转换为“Access Denied”。 该页面上的其他build议: wmic computersystem rename "W7-Clone-42" 返回无用的“无效动词开关”。 另一个互联网来源提出了以下表述: wmic computersystem where Name="W7-Img3-RPT49VA" call rename name="W7-clone-42" 交替出现无效动词切换或无效的参数。 作为一个testing,我直接在pipe理站上运行上述命令,而不是通过invoke-command ,也得到了拒绝访问。 走老派,我把netdom复制到了目标机器上。 netdom renamecomputer W7-Img3-RPT49VA /newname:W7-clone-42 这给了我“拒绝访问”。 […]
“Sudo !!” 用* nix shell中的pipe理员权限调用先前执行的命令。 在PowerShell中是否有等价物?