PowerShell 在执行任何命令时突然挂起

PowerShell 在执行任何命令时突然挂起

我使用的是 Windows 8.1,并且已经使用这个特定的 Windows 安装大约 3 年了。我本身并不是 Powershell 的重度用户,但我进行了一些编程,并且任何命令行工作(git、node)通常都是在 Powershell 中完成的 - 无论是“内置”的还是通过 ConEmu 运行的 shell。

在过去的几天里,PowerShell 开始出现问题。窗口会在启动时挂起。所以我尝试从我的配置文件中删除所有命令。现在至少我得到了提示。但是,如果我尝试输入如下命令

cd src

它会挂在那里,似乎永远挂在那里。如果我使用 tab 补全,情况也是一样。

有些命令运行良好。我发现的命令是实际的程序文件,例如 git、node 和 ember。但是,如果我无法进入我需要的目录,它们对我没什么帮助……

Set-Location 有同样的问题。

Windows 正在保持更新,并且我没有正在等待的未更新。

我能做些什么来找回我的 shell?我会尝试回答任何系统信息请求,但如果要通过 PS 命令找到它们,我可能需要另一种方法。

谢谢您的任何建议!

编辑:检查版本确实有效。

Major  Minor  Build  Revision
-----  -----  -----  --------
4      0      -1     -1

编辑2:$PSVersionTable 的输出:

Name                           Value
----                           -----
PSVersion                      4.0
WSManStackVersion              3.0
SerializationVersion           1.1.0.1
CLRVersion                     4.0.30319.42000
BuildVersion                   6.3.9600.17400
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0}
PSRemotingProtocolVersion      2.2

编辑3:进一步查看 ProcMon 之后,这是我在列出目录内容后从名称中包含“powershell”的任何进程中看到的最后一件事:

powershell 冻结后的 ProcMon 事件的屏幕截图

答案1

我遇到了同样的问题。在提升的 cmd 提示符中运行以下命令为我解决了此问题:

sfc /scannow
dism /online /cleanup-image /restorehealth

第一个是系统文件检查器,它会检查并尝试修复损坏的操作系统文件。

第二,分布式系统管理,用于在线和离线 Windows 映像处理。使用 /online 开关告诉它使用当前正在运行的实时 Windows 环境。此命令还将尝试修复损坏的 Windows 操作系统。

相关内容