【问题标题】:Powershell Start-Process to run another Powershell script with more historyPowershell Start-Process 运行另一个具有更多历史记录的 Powershell 脚本
【发布时间】:2016-12-19 18:01:53
【问题描述】:

使用 Start-Process 我可以在我的 powershell 脚本中调用另一个 powershell 脚本。

例如Start-Process powershell -argument '.\Another.ps1

问题是新窗口只有有限的历史记录(即向上滚动查看打印出来的内容)

有没有办法从Start-Process 增加历史记录大小?

如果不是,你如何调用另一个可以拥有更多历史记录大小的 powershell 脚本?

【问题讨论】:

  • $Size = $Host.UI.RawUI.BufferSize; $Size.Height += 100; $Host.UI.RawUI.BufferSize = $Size
  • @PetSerAl 谢谢。这与新的 powershell 进程有何关系?
  • 它没有。它是为当前 PowerShell 进程扩展缓冲区大小的命令。您需要将其放入新 PowerShell 进程的脚本中。
  • @PetSerAl 谢谢。是的,您的代码可以工作,但我需要一些东西来调用另一个具有已扩展 Windows 历史记录的脚本,无法编辑另一个脚本。

标签: powershell start-process


【解决方案1】:

在这种情况下,您可以为该特定会话增加 MaximumHistoryCount

获取变量MaximumHistoryCount |选择对象-ExpandProperty 属性

然后你可以设置最大值。

Set-Variable -Name MaximumHistoryCount -Value 32767
## Check it again using the range also 
Get-Variable -Name MaximumHistoryCount | Select-Object -ExpandProperty attributes | Format-List -Property *Range

注意:您不能给出超过 32767 的值。那是上限。

希望这会有所帮助。

【讨论】:

  • 谢谢。您能否提供有关这如何改变新的 powershell 进程的完整代码?
  • 当然。我已经修改了答案。请检查一下。如果对您有帮助,请接受。
  • 不,它不起作用。我想你误解了我的问题。我说的是 Windows 历史记录(您可以向上滚动阅读的行数),而不是命令历史记录。
猜你喜欢
  • 2022-01-23
  • 2019-03-25
  • 2013-07-25
  • 2019-08-16
  • 1970-01-01
  • 2013-08-17
  • 2018-06-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多