如何将文件从 Ubuntu WSL 导出到 Windows 或任何其他目录,以便我可以在 Windows 中使用/编辑该文件
答案1
简短的回答是,现在你还不能,但是有一些解决方案。
首先是警告:
我必须每天至少提供 2-3 次此指导,因此我将其发布在这里,以便每个人都能找到/链接到此指导。
当谈到 Windows 上的 Bash 时,有一条硬性规定:
在任何情况下都不要使用 Windows 应用程序、工具、脚本、控制台等创建和/或修改 Linux 文件。另请注意:使用某些 Windows 工具打开文件可能会读取锁定打开的文件和/或文件夹,从而阻止更新文件内容和/或元数据,从而导致文件/文件夹损坏。
从 Windows 创建/更改 Linux 文件可能会导致数据损坏和/或损坏您的 Linux 环境,需要您卸载并重新安装您的发行版!注意:您的“Linux 文件”是 %localappdata%\lxss 下的任何文件和文件夹 - 这是 Linux 文件系统(发行版和您自己的文件)存储在您的驱动器上的位置
但这意味着%localappdata%\lxss
阅读链接了解完整详情和原因的其他信息。据我所知,此问题目前被标记为“可能修复”(从“不会修复”升级)。
有以下几种选择:
第一的:
所以我该怎么做?
要使用 Windows 和 Linux 工具处理文件,请在 Windows 文件系统中存储和处理这些文件,并通过 /mnt//path 从 Windows 和 Bash 访问它们(例如 /mnt/c/dev/project/...)
这里列出了“解决方法”:
https://github.com/Microsoft/WSL/issues/1524
但如果你尝试这些,并不能保证你不会破坏任何东西。
第二,在windows中创建共享目录,并在WSL中挂载:
您也可以尝试https://github.com/Microsoft/WSL/issues/1319
在 Windows 中创建一个文件夹,命名为
%用户配置文件%\项目
在适用于 Linux 的 Windows 子系统中,执行以下操作:
ln -s /mnt/c/Users/[您的Windows用户名]/projects ~/projects
任何您想要编辑的与 Linux 相关的文件,都可以在 ~/projects 中编辑,一切都会 100% 顺利。
第三(对某些人来说可能是最好的)是使用 Linux 工具。
nano
是一个易于使用的命令行编辑器
nano file_to_edit
保存/退出的组合键位于编辑器底部
答案2
只需在适当的路径打开一个 bash 终端:
$ explorer.exe .
瞧!
答案3
编辑存储在 WSL(适用于 Linux 的 Windows 子系统)中的 Linux 文件的最简单方法是使用 Linux GUI 应用程序。完成适用于 Windows 10 的 Ubuntu 的初始设置后,您需要安装vcxsrv
Ubuntu 桌面。这将使您能够完全访问 GUI 应用程序,例如gedit
并运行包含 GUI 对话框(例如zenity
或 )的脚本yad
。
请参阅这个答案:截至 2018 年,在 WSL 上运行 GUI 应用程序的最简单方法是什么?
如果您使用 Windows 应用程序修改存储在 WSL 目录中的 Linux 文件你会破坏数据:
答案4
这些文件在 Windows 中已经可用。如果您不想记住困难的路径,请打开 wsl 控制台,转到相关目录并输入explorer.exe .
。这将在当前目录中打开 Windows 资源管理器。
替代方案:
当你使用命令时df
,你会看到类似 $ df 的内容
Filesystem 1K-blocks Used Available Use% Mounted on
rootfs 240047100 56379724 183667376 24% /
none 240047100 56379724 183667376 24% /dev
none 240047100 56379724 183667376 24% /run
none 240047100 56379724 183667376 24% /run/lock
none 240047100 56379724 183667376 24% /run/shm
none 240047100 56379724 183667376 24% /run/user
cgroup 240047100 56379724 183667376 24% /sys/fs/cgroup
C:\ 240047100 56379724 183667376 24% /mnt/c
H:\ 987142140 455640896 531501244 47% /mnt/h
在这种情况下,C:\
和H:\
分区安装在下/mnt
,您可以将文件复制到这些驱动器
mkdir -p /mnt/h/folder_I_own_in_Windows/ubuntu_files
cp * /mnt/h/folder_I_own_in_Windows/ubuntu_files