Ubuntu ls 不显示所有文件,但是当我“ls filename”时,它会显示吗?

Ubuntu ls 不显示所有文件,但是当我“ls filename”时,它会显示吗?

我正在使用 PHP 7.3 在更大的应用程序中移动一些文件。 PHP 7 在 Windows 10 的 wsl2 容器中的 Ubuntu 20.04.4 上运行。

在阅读其他问题时,这似乎可能是 windows-subsystem-for-linux 的奇怪之处,但我需要弄清楚如何纠正它?

完成后,其中应该有一组文件和一个目录。一切正常,没有错误,然后我进入目录,发生了这种情况:


root@mymachine:/data/temp# ls 4583308_163*                  <---- list glob
4583308_163_master.jpg

4583308_163:
TileGroup0  TileGroup1  4583308_163.xml

root@mymachine:/data/temp# ls 4583308_163                   <---- tab completions
4583308_163/            4583308_163_master.jpg

root@mymachine:/data/temp# ls 4583308_163.jpg               <---- individual filenames show????
4583308_163.jpg

因此,lsglob 显示了一个我没有移动的文件、一个已创建的目录以及刚刚移动到该目录中的文件,还有 3 个其他文件移至顶层,但未显示。

制表符补全也不显示它们,但如果我知道ls那里的文件的文件名,我就可以看到它!?

该文件肯定存在,如果直接打开,可以通过其他命令看到,但通配失败(file 4583308_163.jpg很好,file 4583308_163.*没有给出这样的文件或目录错误)

你可能会认为,在经历了超过 25 年的 *nix 之后,我会有一个答案......有人有想法吗?

我尝试过使用bashand sh,两者都是相同的。find也无法“找到”文件。

重新启动 wslwsl --shutdown不起作用 - 我不是管理员,它是一台工作计算机,我无法获得管理员权限。所以我的想法是,我可以看到这些文件的唯一方法是重新启动计算机,我刚刚这样做了并且我仍然看不到文件

更新 当我周五离开时,我的机器需要更新,所以我将其关闭并在下班时进行更新。今天我来了,看来一切顺利。

我不知道它是否已完全修复(通过更新?),但我现在无法重现该问题。

相关内容