【问题标题】:In what use cases I will need WSL在什么用例中我需要 WSL
【发布时间】:2018-12-31 13:50:39
【问题描述】:

好的,我阅读了有关 WSL 的 Microsoft 文档 https://docs.microsoft.com/en-us/windows/wsl/about.

第一段说

适用于 Linux 的 Windows 子系统允许开发人员运行 Linux 环境 -- 包括大多数命令行工具、实用程序和应用程序 -- 直接在 Windows 上,未经修改,没有虚拟的开销 机器。

我的问题是; 在什么情况下,作为开发人员,我希望在我的 Windows 中运行 Linux 环境?可能当我为 Linux 操作系统开发一些东西并且没有可供我使用的 Linux 操作系统时?或者还有更多内容?

我是该子系统的新手,因此不胜感激。

【问题讨论】:

  • 我也不懂。如果我想在机器上运行 Linux,我会首先安装 Linux,而不是 Windows。 YMMV。
  • 在工作中,我们使用 WSL 来移植与 linux 内核交互的代码。虽然我可以重新编写程序,但在 WSL 中运行它会更容易。
  • 我认为它是对 Linux 的轻量级介绍,尽管这可能不是它的本意。通过这种方式,我可以更轻松地了解 Linux 上的特定子集并使用它们,而无需设置虚拟机、双启动使我的硬盘驱动器混乱或进入完整的 Linux。例如,一开始我想修剪数字周围的空白,这在 shell 上非常容易,在 Windows 上 那么难,但现在我也用它来托管 jupyter notebook,连接到cluster, git MATLAB files 同时在编辑器中开发代码...,我仍然可以使用 OneNote!

标签: linux windows raspberry-pi raspberry-pi3 windows-subsystem-for-linux


【解决方案1】:

这个问题接近于“主要基于意见”,除了我认为微软的人有特殊用途。

如果您有一个 Linux 项目,并且希望以最小的摩擦将其迁移到 Windows,那么您可能需要 WSL。您的代码可以继续使用 Linux API,您的构建脚本可以在 bash shell 中运行并使用所有典型的 unix 命令行工具。如果您需要仅限 Linux 的工具,您也可以运行这些工具。否则,要将项目移植到 Windows,您必须做很多工作。

来自Ars Technica

Microsoft 将 WSL 严格定位为开发人员的工具,特别是支持 Web 开发人员和他们所依赖的开源软件堆栈。许多开发人员非常熟悉 bash shell,使用 make 和 gcc 构建软件,以及在 vi 或 emacs 中编辑文本。 WSL 将为这些开发人员提供这些工具的版本,这些版本几乎在所有方面都与您在 Linux 上获得的版本相同,因为它们将是您在 Linux 上未经修改地在 Windows 上获得的版本。

【讨论】:

  • Cygwin 从那时起就存在了......好吧,只要我记得。它基本上是一样的,除了文件系统是一个挂载的 tarball。然而,与 .deb / .rpm 等相比,Cygwin 受到限制 - 每个包的端口必须为 .exe。至于我自己,它在开发和处理安装的 unix 存储库管理器时非常方便,它可以非常快速地设置具有我们在 linux 主机上习惯的所有功能的平台。有些东西在 Windows 上不可用(.so vs .dll),反之亦然。只是我的 50 美分
【解决方案2】:

WSL 可以在 Windows 上运行在 Linux 中开发的任何东西,并与 Windows 文件进行交互。

微软表示,Linux 和 Windows 进程之间的交互成为可能。我不知道怎么做。

我成功使用 WSL 的目的是运行在 Linux 中编写和测试的 bash 脚本,例如在 Windows 中将 Windows 中的文件重命名为我的规范。 5 分钟视频here (https://youtu.be/gzcIi31AszA) 中提供了该脚本作为用例的描述,并可下载以供您自己测试。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-04-19
    • 2022-11-20
    • 2019-06-09
    • 1970-01-01
    • 2019-02-17
    • 2012-01-18
    • 2010-10-03
    相关资源
    最近更新 更多