为什么我在 PowerShell 和 Windows 资源管理器中看到不同的文件?

为什么我在 PowerShell 和 Windows 资源管理器中看到不同的文件?

今天,在处理 Jupyter Notebook 中的一些文件时,我发现 Jupyter Notebook 中的文件列表与我在文件浏览器中看到的内容不一致。

我之前编写脚本时也发生过类似的事情,当我更改代码并在 Git Bash 或 Powershell 中运行它时,我会收到相同的语法错误(即使我注释掉了整个文件)。

如果我从 Explorer 打开 Git Bash,我能够看到更新的文件,正如我所期望的那样,但如果我从 Git Bash 打开 Explorer,文件就会丢失。我理解这是因为子程序继承了其父程序的权限,但似乎仍然有两个文件源不同步。

我今天所做的唯一一件我认为会损坏我的文件系统的事情是从任务管理器结束我的 python 脚本并保持文件锁打开,但我没有收到任何相关错误。

我已尝试过:

系统详细信息

  • Windows 10
  • Git Bash v4.4.23(1)-发布 (x86_64-pc-msys)
  • Python 3.7.4

这里这是一张屏幕截图,显示了从命令提示符打开的 Windows 资源管理器的一个实例和从 GUI 打开的 Windows 资源管理器的一个实例。两个窗口顶部的路径相同。

答案1

正如@BenN在评论中指出的那样,路径并不完全相同。我在Git Bash中使用以下命令创建了一个符号链接:

ln -s Documents/uas uas

事实证明,符号链接和实际目录的文件树没有保持同步,导致了我看到的问题。以下是有关 Windows 上的 Git 符号链接的更多信息:

https://stackoverflow.com/questions/5917249/git-symlinks-in-windows#16754068

相关内容