Articles of PowerShell的

用path中的空格执行batch file

我有问题通过PowerShell在远程服务器上执行batch file。 用户可以在Servername , 启动或查杀进程, Servicename等popup窗口中select多个意见。 所选项目将保存在variables中。 如果select了所有项目,我想将string合并到一个string并执行命名为这个结果string的批处理脚本。 我尝试按照这篇文章中的描述来做,但批处理脚本不会被执行。 例: [String]$scriptpath="C:\tmp\" [String]$Servername = "xx040" [String]$actionprefix = "kill_process" [String]$action = $($actionprefix) + "-" [String]$Servicename = "service1" [String]$ServiceFullname = $($action) + $($Servicename) + ".bat" $batchPath = $("`"$scriptpath + $ServiceFullname `"") Invoke-Command -ComputerName $Servername -ScriptBlock { cmd.exe /c "`"$batchPath`"" }

Windows用户环境variables与系统环境variables

在Windows中,是否有任何shell / Powershell命令分别列出用户环境variables和系统环境variables。 如果我做 – SET TEMP Windows将显示“用户环境variables”而不是“系统variables”。 我正在寻找shell命令/开关来分别显示这些variables。

在PowerShell中反斜杠

为什么-split参数的string需要两个反斜杠,而-join参数的string只需要一个反斜杠? 反向是Powershell中的转义字符。 一个angular色前面的反斜杠为你做了什么? $path = 'C:\folder\test\unit1\testing\results\report.txt' $path -split '\\' -notlike '*test*' -join '\' http://powershell.com/cs/blogs/tips/archive/2014/06/17/fun-with-path-names.aspx

如何获得Windows版本?

我需要在PowerShell中创build一个validation操作系统版本(Pro,Enterprise,Home等)的脚本。 我已经find许多关于如何使用操作系统版本(Vista,7,8,8.1等等)的ID号码进行validation的信息,但是我找不到有关版本代码的任何信息。 我的问题是: 是否有Windows版本的代码? 如果没有代码,唯一的方法就是Get-WmiObject -Class Win32_OperatingSystem | % Caption Get-WmiObject -Class Win32_OperatingSystem | % Caption ,如何格式化这个在任何Windows操作系统上select版本? 还有其他方法可以做到吗? https://msdn.microsoft.com/en-us/library/windows/desktop/ms724833(v=vs.85).aspx

如何使用Powershell命令确定平均CPU百分比并将CPU百分比输出为不带标签的数字百分比

我正在努力获得一个PowerShell命令,它允许我拉远程服务器的所有内核的平均CPU百分比,并输出值只是数字百分比。 我很近,但一直没能find方法来获取数值。 以下是我正在使用的命令,后面跟着输出。 Get-WmiObject -computer server -class win32_processor | Measure-Object -property LoadPercentage -Average | FL average Average : 30.5 预先感谢任何帮助!

双跳访问复制文件没有CredSSP

你好, 我们拥有数百个虚拟机的大环境。 在我们的服务部署过程中,我们需要将一些文件从build drop复制到所有这些机器上。 所以,我们有: 用户机器,执行部署脚本 build立放置机器,文件在哪里 目标机器 Powershell被用作脚本语言。 就像是: $buildDrop = "\\sourceMachine\Build" $machineTarget = "targetMachine" Invoke-Command -ComputerName $machineTarget -ArgumentList $buildDrop -ScriptBlock { Param( $buildDrop ) Test-Path $buildDrop # Will return False } 这种方法导致双跳问题 ,由于CredSSPfunction,XP和2k3机器不支持这个问题 ,所以我无法解决这个问题 。 并且在用户机器上调用的复制导致性能瓶颈(数据通过用户机器)。 有没有办法让所有目标机器始终可见的build立下降? 可能会以某种方式将它们添加到受信任的位置或类似的东西? 提前致谢!

通过SSH和PowerShell执行多个命令

我成功通过SSH成功​​连接到Cisco IE-2000-L交换机。 我使用了Renci SSH.NET库。 入门指南: http : //vwiki.co.uk/SSH_Client_(PowerShell) 我的工作代码是 # Load SSH library (for .NET 4.0 and PowerShell 3) $DllPath = "D:\temp\Renci.SshNet.dll" [void][reflection.assembly]::LoadFrom( (Resolve-Path $DllPath) ) # Connect to switch (Cisco IE2000-L) with IP, port, username, password $SshClient = New-Object Renci.SshNet.SshClient('172.20.91.30', 22, 'admin', 'mypassword') $SshClient.Connect() # execute one command on Cisco switch $SshCommand = $SshClient.RunCommand('show […]

如何在Windows 8上从PowerShell运行Metro-App?

有关超级用户的另一个问题 ,我试图从命令行运行一个基于Metro的应用程序。 根据对我的超级用户问题的评论,我可能会在PowerShell命令或脚本上find一个答案。 我已经尝试,但发现任何有关PowerShell和Windows 8的互联网参考… 那么,有什么特定的方法/命令可以在Windows 8上通过PowerShell命令调用并运行Metro风格的应用程序?

Powershell清除主机替代保存缓冲区

我想像Clear-Host这样的东西,但想要回滚。 到目前为止,我所拥有的基本上都是添加新行,直到屏幕清晰。 虽然当我这样做时,光标开始写在页面的底部(如期待 – 虽然不希望)。 我希望能够从页面的顶部开始写作(对于菜单等等,这是很自然的事情) 这是打印新行的dynamic计数的代码: do {Write-Host ""; $i++} while ($i -ne $Host.UI.RawUI.WindowSize.Height) 我确实看到了一些关于Transcript模块的内容,但并不希望这样做。 提前致谢。

Powershell:$configuration文件指向我找不到的path,并设置永久path

我看着我的$ profilevariables,我看到它指向C:\用户\用户名\ Documents \ windowsPowershell \ Microsoft.Powershell_profile.ps1 但是,当我尝试浏览到此目录时,找不到名为WindowsPowerShell的文件夹/目录应该位于文档文件夹中。 有任何想法吗? 我希望能够设置一个永久的path,链接到我的configuration文件,或者至less加载Powershell时加载它。 我在这里的正确轨道? 谢谢! -Dustin