Questions tagged «powershell»

Windows PowerShell是Windows的命令行外壳程序和脚本语言,它取代了CMD.exe Shell和批处理语言。PowerShell还是Windows的自动化引擎,提供类似于Windows Script Host和VBScript的功能。

4
如何使用Powershell断开网络驱动器
我想用Powershell断开网络驱动器(Y :)。该驱动器号已分配/映射到网络位置。有没有简单的方法可以做到这一点? 我相信“ net use XXX / delete”会做到这一点。 问题是: C:\Windows>net use New connections will be remembered. Status Local Remote Network ------------------------------------------------------------------------------- OK Y: \\192.168.1.108\d Microsoft Windows Network The command completed successfully. 为什么当我尝试: C:\Windows>net use \\192.168.1.108\d /del 我得到: C:\Windows>net use \\192.168.1.108\d /del The network connection could not be found. More help …

3
从任务计划程序运行时,为什么Excel无法打开文件?
我编写了一个PowerShell脚本,该脚本可打开excel工作簿并运行宏。当我从PS控制台运行该脚本,甚至使用powershell.exe script.ps1从命令行运行该脚本时,它都可以正常工作。当我从Windows任务计划程序设置任务时,它将引发有关该Excel文件的异常,说该文件不存在或已在使用中。 该文件肯定存在,因为脚本可以从命令行正常运行,我很肯定它没有被使用。 我试图将Excel文件移动到本地非特权区域,以避免网络信任/管理员特权问题。该任务仍以最高特权运行。路径中没有空格或特殊字符。 当我尝试使用文件系统对象访问文件时,即使从调度程序运行也没有错误,所以我猜它特定于Excel.Application.Workbooks.Open("..")方法。 我现在应该考虑什么?

3
为什么将Powershell设置为set-executionpolicy remotesigned失败?
使用Win7-32​​bit和Powershell ISE我尝试运行刚刚保存的脚本(假设包含一个简单的cls)。 我得到了错误,通过“get-help about_signing”建议禁止执行脚本。 当使用“set-executionpolicy remotesigned”来解决时,我得到了一个对话来验证我是否确定。但如果我接受另一个错误: acces to registry key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell" denied + set-executionpolicy <<<< remotesigned + CategoryInfo : NotSpecified: (:) [Set-ExecutionPolicy], UnauthorizedAccessException + FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.SetExecutionPolicyCommand 我该怎么做,以用户身份运行已保存的脚本(或作为日常服务自动执行)?


1
如何在不使用括号的情况下在Powershell中获取对象的属性?
我经常发现我必须将命令括在括号中,然后使用属性访问运算符(点语法)来获取属性的值。这很烦人,因为当我只想继续输入自己所在的位置时,我必须回到该行的开头。当我遇到大量管道命令时,这尤其令人讨厌。 例 如果我有以下命令 Get-PSProvider FileSystem 我想获取该Drives属性,则必须首先将整个命令放在括号中: (Get-PSProvider FileSystem).Drives 是否有更快的方法来获取单个属性的值?
13 powershell 

1
点源采购是否比仅读取文件内容还要慢?
我编写了一个PowerShell模块,该模块从不同的源文件(即每个函数一个.ps1文件)中提取函数定义。这使我们(作为一个团队)可以并行处理不同的功能。模块(.psm1文件)获取可用.ps1文件的列表... $Functions = Get-ChildItem -Path $FunctionPath *.ps1 ...然后遍历列表并通过点源引入每个函数定义: foreach($Function in $Functions) { . $Function.Fullname # Can be slow } 问题:我们注意到完成速度大约有10到180秒(大约50个源文件)变化很大,这取决于我们在哪台机器上进行测试。我们无法解释所花费时间的巨大差异,并且相信我们已经控制了变量,例如机器类型,操作系统,用户帐户,管理员权限,PS配置文件,PS版本等。相同主机在同一主机上花费的时间可能有所不同用户从一天到第二天。 我们确实想知道这是否与磁盘访问有关,并测试了我们可以从磁盘中读取数据的速度。事实证明,Get-Content在所有这些文件上运行都非常快,我们在解决该问题的方法中利用了这一点: foreach($Function in $Functions) { Invoke-Expression (Get-Content $Function.Fullname -Raw) # Is quick } 为什么通过点源添加这些功能比读取和执行文件内容要慢得多?

5
有没有办法抑制PowerShell脚本中的任何交互式提示?
在编写PowerShell脚本时,我注意到当某些cmdlet遇到问题时,它们会显示一个交互式提示,以非空目录上的Remove-Item为例。在尝试自动执行任务时,这是致命的,我宁可采取的行动只是失败并抛出异常或返回错误的返回码,以使整个脚本不会被锁定以等待响应。 有什么方法可以强制PowerShell自动失败,而不是寻求用户对操作的输入?
13 powershell 

2
通过命令行模拟键盘按钮
我的键盘没有Num Lock按键,并且由于某些原因,任何注册表编辑都无法正常工作。 我可以在Windows 10上使用命令提示符或PowerShell来“按下”键吗?我正在寻找类似在Command Prompt或PowerShell中press pgup按Page UpKey的方法,但对于Num Lock。


2
通过注册表配置Windows Creators Update Night Light
如何通过注册表配置Windows 10(Pro)Creators Update中的新夜灯功能? 使用我选择的配置管理工具(Chef)时,我想自动配置新的/更新的安装。通过Sysinternals Process Monitor进行的系统检查显示,二进制Data密钥已在深处进行了更新HKCU\Software\Microsoft\Windows\CurrentVersion\CloudStore\Cache\DefaultAccount\$$windows.data.bluelightreduction.settings\Current,但这是一个很大的REG_BINARY blob,并不是很有用。 我们非常感谢您提供有关其他注册表,PowerShell或其他自动化友好方式来配置夜灯功能的帮助!

3
为什么PowerShell ISE不将脚本变量与脚本范围隔离?
在PowerShell中,作用域应该使脚本中的对象(变量,别名,函数等)不会影响全局环境。这似乎在命令行中正常工作,但在ISE中没有。 这是控制台中的演示。我检查一下 $x 未在全局范围内定义,显示内容 ScopeTest.ps1 然后运行它,最后我检查是否 $x 再次定义。正如所料, $x 仅在脚本范围内创建和使用,并且在脚本终止后不会在全局环境中保留。 在ISE中,如果使用控制台窗口调用脚本,这似乎有效。 但是,如果我实际使用“运行脚本”按钮或F5,脚本中的变量将在完成后保留。 如果脚本假定它将从一个干净的环境开始(即:脚本中设置的任何变量都不应该存在),这可能会使编写和故障排除脚本变得有点困难。为什么ISE会以这种方式运作? 答案 这个问题 稍微谈到这个话题,提到“点源”,但我希望在这里得到更全面的解释。此外,如果存在关于脚本在ISE中以不同方式运行而不是从控制台运行的原因的文档,那么引用也会很好。
12 powershell 

3
PowerShell:历史记录增强功能(readline)?
我喜欢在Bash中做的一些事情,很想知道如何在PowerShell中做: 在Bash中,我设置了历史记录滚动,以便它只滚动以与当前行相同的前缀开头的命令。如果我想查看我的最新提交(例如,重用部分注释),请编写“ git”,然后编写↑。 相关当然是带有Ctrl+ 的历史搜索R 为了找到其他东西,我写: h | grep foo 在PowerShell中,我使用: h -c 1000 | where {$_.commandline.contains("foo")} (显然,我是新手,一定有更短的路要走) 像: mv file.txt{,.bak} 要么 mv file.txt !#$.bak 魔术空间(!$内联扩展) 在PowerShell中有哪些替代方案?

3
查找具有特定AD属性的AD用户NOT null
我正在寻找一个脚本/ Powershell命令,该命令将列出在teletexterminalidentifier属性中具有非 NULL 值的所有AD用户,因此他们必须设置一个值。 默认情况下,未设置此属性,但是我们有一个可修改此属性(包含十六进制字符串)的应用程序,因此,我正在寻找所有将此属性设置为某些值的用户的列表。 谢谢!
12 powershell 

4
如何在Windows 7中设置PowerShell默认窗口大小?
在Windows 7中,如何设置默认的PowerShell窗口大小?默认情况下,它对于我正在使用的上网本屏幕而言显得过高。 我尝试了通过单击左上角并选择“属性”的方法来更改大小,但是它告诉我:(Unable to modify the shortcut: . Check to make sure it has not been deleted or renamed.是的,错误消息的中间有一个点) 我还尝试右键单击“开始”菜单中的PowerShell快捷方式,然后在其中更改属性,但是,更改似乎没有停止。

4
Powershell打开/响应非常慢
我在Windows 7 64位上运行PowerShell 3.0时遇到问题。运行它需要很长时间才能打开/启动。对于几乎所有的响应,它也相当缓慢。 我相信这可能是由于我的个人资料存储在我的文档中,而我的文档文件夹已同步到我们的网络。 有什么方法可以移动我的个人资料的位置,以便可以将其保存在本地而不是通过网络?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.