如何修复 Windows 10 上的“系统找不到指定的路径”错误?

问题描述 投票:0回答:3

我使用的是 Windows 10。

每当我运行 python 脚本、启动 cygwin 终端、bash 脚本时,我都会遇到错误消息

The system cannot find the path specified
...

没有有意义的错误消息来查明确切原因。我怀疑这是由于 PATH 变量中的路径名之一指向不存在的路径。我怎样才能找出哪个路径名导致它?

windows path windows-10
3个回答
25
投票

Powershell 路径测试

这是一个一行 Powershell 脚本,它将测试 PATH 环境变量中的所有路径是否存在。它将报告每个路径的 OK 或 MISSING。如果任何路径被列为缺失,您应该手动将它们从环境变量中删除。

@($env:path -split ";").ForEach({ if($_) {$result = 'MISSING |';if(Test-Path -path $_) { $result = '     OK |'};-join($result, ' ', $_); }})

选项2

从提升的 CMD 提示符运行以下命令。这可确保所有 Windows 路径和可执行文件可用、权限正确且未损坏。运行后,如果需要,它会给出进一步的说明。

sfc /scannow

关于证监会/scannow


选项3

打开注册表编辑器 (regedit.exe)。检查以下各项(如果存在)是否存在无效的不需要的路径。 像往常一样,在进行更改之前备份注册表。

HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun

选项4

从 Microsoft 网站获取小型实用程序 Process Monitor。 Process Monitor 是一款适用于 Windows 的高级监控工具,可显示实时文件系统、注册表和进程/线程活动。您将使用此工具找到有问题的路径。

  1. 下载、解压并运行
  2. 关闭尽可能多的打开程序。
  3. 在进程监视器中,文件下方有一个用于启用/禁用的捕获事件复选框。打开后,停止捕获,然后选择“编辑”->“清除显示”。
  4. 现在准备重现“系统找不到指定的路径”错误。
  5. 在触发错误之前,启用“捕获事件”。出现错误时,立即禁用进程监视器中的“捕获事件”。
  6. 使用“过滤器”菜单查找违规操作。查找结果为“NAME NOT FOUND”或“PATH NOT FOUND”的行。犯罪者可能有一个“事件类”=“文件系统”|| “注册表”。它可能是另一个结果/事件类,但是我会从那里开始。

一些过滤器可以尝试缩小犯罪者的范围:

  • “结果”-> 否 ->“成功”
  • “进程名称”-> IS ->“cmd.exe”(或其他 shell)

找到所需内容并解决问题后,您至少需要在重新测试之前关闭并重新打开提示,但可能还需要重新启动。

如果可以卸载违规记录而不是直接删除,则执行此操作,因为错误/过时的文件系统路径可能只是问题的一半,此外还需要更新注册表记录。卸载程序应该可以解决这两个问题。

如果需要更改注册表,请确保首先使用 regedit.exe 创建备份。


0
投票

有一个简单的方法可以做到这一点,只需点击此链接即可在高级设置中找到您的 PATH 变量

https://docs.oracle.com/en/database/oracle/r-enterprise/1.5.1/oread/creating-and-modifying-environment-variables-on-windows.html#GUID-DD6F9982-60D5- 48F6-8270-A27EC53807D0

现在您不太可能拥有多个 PATH 变量,因此我建议检查每个 PATH 变量,无论哪个有问题,只需将其删除

或者,只需添加一个新的 PATH 变量,其中包含 python 库文件的路径


0
投票

您还应该尝试更改命令的顺序。将 -out 属性放在命令末尾。

© www.soinside.com 2019 - 2024. All rights reserved.