如何在 WSL 中将整个文件从 Linux(通过 ConEmu 终端)复制回 Windows

如何在 WSL 中将整个文件从 Linux(通过 ConEmu 终端)复制回 Windows

我正在使用 ConEmu 终端访问我的 Windows 10 计算机的 Linux 发行版中的文件。我使用 Nano 或 VIM 打开文本文件,但在复制时遇到问题整个文本文件返回 Windows。

显然,用鼠标选择文本并复制,然后返回 Windows 并粘贴是可行的。但是,当文件有数百行时,这种方法就行不通了。

在 Nano 中,我尝试过打开软换行(Esc+$)并在复制之前将字体大小调小等操作。对于超大文件来说,这是不可取的。

在 VIM 中,我尝试安装 VIM-GNOME,然后使用 %y+ 提取文本,但该缓冲区无法复制回 Windows。

我可以尝试在 Windows 资源管理器中找到 Linux 文件,然后使用 Windows 文本编辑器打开,但这有点不方便且危险。

如何复制整个文件的内容(或其中的大部分)并将其从 Linux 子系统粘贴到 Windows?

我正在使用 ConEmu 终端,但如果有其他终端的解决方案,我也想尝试一下。

谢谢!

答案1

正如您所发现的,通过剪贴板移动大文件是一种有点尴尬的体验。您最好复制整个文件。

我可以尝试在 Windows 资源管理器中找到 Linux 文件,然后使用 Windows 文本编辑器打开,但这有点不方便且危险。

有两种正确的方法和一种错误的方法来实现这一点。

第一种方法是使用 WSL 将文件复制到 Windows 目录中。这意味着/mnt/<driveletter>挂载点下的任何内容。例如,/mnt/c/Users/Your.Username/Documents将映射到您的 Windows 文档文件夹。这是完全安全的 - 虽然您可能需要一个能够读取 LF 行尾的文本编辑器才能正确打开文件。

或者,如果您使用的是 Windows 10 v1903 或更高版本,wsl$您可以通过共享安全地访问 WSL 目录和文件。最简单的方法是通过资源管理器在explorer.exe .WSL 内运行来打开 WSL 目录。

危险的方法涉及通过 AppData 访问 WSL 目录。 不要这样做。

相关内容