文件资源管理器不会显示 $env:psmodulepath 中可见的 PowerShell 模块目录

File Explorer won't display PowerShell Modules directory otherwise visible in $env:psmodulepath

我正在学习如何通过这个 youtube 教程创建 powershell 模块 https://www.youtube.com/watch?v=yKstEJKdc4o&t=3661s - 视频本身并不重要。

我从docs.microsoft.com了解到powershell默认会有以下模块目录:

$PSHome\Modules (%Windir%\System32\WindowsPowerShell\v1.0\Modules)

$Home\Documents\WindowsPowerShell\Modules (%UserProfile%\Documents\WindowsPowerShell\Modules)

$环境:ProgramFiles\WindowsPowerShell\Modules (%ProgramFiles%\WindowsPowerShell\Modules)

然而,在文件资源管理器中没有可见的 C:\users\john\Documents\WindowsPowerShell\Modules 文件夹,而当我从 PowerShell 运行 执行此操作时,它在 $env:psmodulepath 中清晰可见。我可以一直导航到 C:\Users\john\Documents\WindowsPowerShell,但是 没有模块目录 。我确实启用了隐藏文件夹显示,并且还检查了 OneDrive、Public、管理员用户的文档文件夹。这不是 work/school 电脑,这是我自己的电脑。

有人可以帮我理解为什么这个 Modules 文件夹在 $env:psmodulepath 中可见,但在文件资源管理器中不可见吗?

仅仅因为某个位置存在于 $env:psmodulepath 中,并不意味着它实际上必须存在于文件系统中。

您可以将任何随机位置添加到 $env:psmodulepath,但实际上并不存在。 PowerShell 将跳过任何不存在的位置。

使用新的 Windows 帐户,$env:userprofile\documents 下甚至没有 WindowsPowerShell 目录,要使用用户配置文件或模块,您必须创建这些目录。

用户创建新目录相当容易,但向 $env:psmodulepath 添加新条目则有点棘手。我想这就是为什么他们已经把它放在那里了,尽管它可能永远不会被使用。