将文件从Windows复制到Ubuntu子系统

Jor*_*nGS 79 linux windows bash windows-10 windows-subsystem-for-linux

我已启用开发人员模式并已安装Bash on Ubuntu on Windows.

我的主目录可以找到%localappdata%\Lxss\home\<ubuntu.username>\,我创建了一个名为Pictures的子目录,以便完整路径

在Windows上: C:\Users\<windows.username>\AppData\Local\lxss\home\<ubuntu.username>\Pictures

在bash上: /home/<ubuntu.username>/Pictures

如果我使用命令从bash创建一个文件,touch hello.txt我可以在Windows用户界面中自由查看该文件并将其复制到我的桌面.但是,如果我从Windows UI创建一个新的文本文件并保存C:\Users\<windows.username>\AppData\Local\lxss\home\<ubuntu.username>\Pictures,即使我重新启动bash或windows,当我这样做时,该文件是不可见的ls -l.

为什么不能在它自己的主目录中查看从Windows端创建的文件?

编辑使用/mnt/c不是一个解决方案,我试图理解为什么它没有看到这些文件,如果有一个补救措施,以便它能够看到UI创建的文件,而不是试图使用终端复制 -粘贴或移动文件.

zoe*_*ver 109

您应该能够访问/mnt目录下的Windows系统.例如,在bash中,使用它来到你的图片目录:

cd /mnt/c/Users/<ubuntu.username>/Pictures
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助!

  • 为此爱你。 (2认同)

rek*_*ker 44

您应该只访问WSL内部的Linux文件系统(位于lxss文件夹中),不要在Windows中的lxss文件夹中创建/修改任何文件,这很危险,WSL也不会看到这些文件.

如果您希望文件可以在WSL和Windows之间共享,请将文件放在lsxx文件夹之外.您可以通过drvFS(/mnt)访问它们,例如/mnt/c/Users/yourusername/files在WSL中,并在Windows中进行修改.

有关详细信息和原因,请参阅:https: //blogs.msdn.microsoft.com/commandline/2016/11/17/do-not-change-linux-files-using-windows-apps-and-tools/