Windows 10的新Bash Shell可以做的一切

Windows 10周年更新于2016年在Windows 10中增加了对Linux环境的支持。但不要被欺骗:这不仅仅是Bash shell。它是用于在Windows上运行Linux应用程序的完整兼容性层。

我们已经介绍了Windows 10的新Bash shell中可以执行的许多操作,因此为了方便起见,我们将所有这些指南汇总到一个大型列表中。

Windows上的Linux入门

有关的:如何在Windows 10上安装和使用Linux Bash Shell

您可以在任何版本的Windows 10(包括Windows 10 Home)上安装Linux环境和Bash Shell。但是,它确实需要Windows 10的64位版本。您只需要启用Windows Subsystem for Linux功能,然后从Windows Store安装所选的Linux发行版(例如,Ubuntu)。

从2017年末的秋季创作者更新开始,您不再需要在Windows中启用开发人员模式,并且此功能不再是beta版。

安装Linux软件

有关的:如何在Windows 10的Ubuntu Bash Shell中安装Linux软件

在Ubuntu(或Debian)环境中安装Linux软件的最简单方法是使用 合适的 命令。 (这 易于 该命令也有效。)该命令从Ubuntu的软件存储库下载并安装软件。您只需一个命令即可下载并安装一个或多个应用程序。

由于这是一个或多或少完整的Ubuntu用户空间环境,因此您还可以通过其他方式安装软件。例如,您可以像在Linux发行版上那样从源代码编译和安装软件。

如果您已经安装了另一个Linux发行版,请使用命令在该特定发行版上安装软件。例如,openSUSE使用 齐珀 命令。

运行多个Linux发行版

有关的:Windows 10上的Ubuntu,openSUSE和Fedora有什么区别?

Fall Creators Update还启用了对多个Linux发行版的支持,以前只有Ubuntu可用。最初,您可以安装Ubuntu,openSUSE Leap,SUSE Linux Enterprise Server,Debian GNU / Linux或Kali Linux。 Fedora也正在开发中,将来我们可能会看到更多的Linux发行版本。

您可以安装多个Linux发行版,甚至可以同时运行多个不同的Linux环境。

如果您不确定要安装哪个,我们建议使用Ubuntu。但是,如果您需要特定的Linux发行版-也许您正在测试将在运行SUSE Linux Enterprise Server或Debian的服务器上运行的软件,或者想要在Kali Linux中使用安全测试工具-则它们可在商店中与Ubuntu一起使用。

在Bash中访问Windows文件以及在Windows中访问Bash文件

有关的:如何在Windows中访问您的Ubuntu Bash文件(以及在Bash中访问Windows系统驱动器)

Linux文件和Windows文件通常是分开的,但是有一些方法可以从Windows访问Linux文件,也可以从Linux环境访问Windows文件。

您安装的Linux发行版会创建一个隐藏文件夹,其中存储了该Linux环境中使用的所有文件。如果要使用Windows工具查看和备份Linux文件,则可以从Windows访问此文件夹,但是Microsoft警告您不要使用Windows工具修改这些Linux文件,也不要在Windows应用程序中创建新文件。

在Linux环境中,您可以从/ mnt /文件夹下访问Windows驱动器。例如,您的C:驱动器位于/ mnt / c,而您的D:驱动器位于/ mnt / d。如果要在Linux和Windows环境中使用文件,请将它们放在Windows文件系统中的某个位置,然后通过/ mnt /文件夹访问它们。

挂载可移动驱动器和网络位置

有关的:如何在Linux的Windows子系统中挂载可移动驱动器和网络位置

适用于Linux的Windows子系统会自动在/ mnt /文件夹下安装固定的内部驱动器,但不会自动安装USB驱动器和光盘等可移动驱动器。它还不会自动挂载可能会映射到您的PC的任何网络驱动器。

但是,您可以自己安装这些文件,并在Linux环境中使用特殊的安装命令来访问它们,这些命令利用了drvfs文件系统。

切换到Zsh(或另一个Shell)而不是Bash

有关的:如何在Windows 10中使用Zsh(或另一个Shell)

微软最初将此功能称为“ Bash shell”环境,但实际上它是一个基础兼容性层,可让您在Windows上运行Linux软件。这意味着,如果您愿意的话,可以运行其他Shell而不是Bash。

例如,您可以使用Zsh Shell代替Bash。当您在“开始”菜单中打开Linux shell快捷方式时,甚至可以让标准的Bash shell自动切换到Zsh shell。

在Windows上使用Bash脚本

有关的:如何在Windows 10上创建和运行Bash Shell脚本

由于有了这种环境,实际上可以在Windows上编写Bash shell脚本并运行它。您的Bash脚本可以访问/ mnt文件夹下存储的Windows文件,因此您可以使用Linux命令和脚本来处理常规Windows文件。您也可以从Bash脚本中运行Windows命令。

您可以将Bash命令合并到批处理脚本或PowerShell脚本中,这非常方便。有关所有这些以及更多内容,请参阅我们的Windows 10 bash脚本指南。

从Linux Shell外部运行Linux命令

有关的:如何在Windows 10上从Bash Shell外部运行Linux命令

如果您只是想快速启动程序,执行命令或运行脚本,甚至不需要先启动Bash环境。您可以使用 bash -c 或者 wsl 命令以从Linux Shell外部执行Linux命令。 Linux环境只是运行命令,然后退出。如果从命令提示符或PowerShell窗口中运行此命令,则该命令会将其输出打印到命令提示符或PowerShell控制台。

你可以做很多事情 bash -c 或者 wsl。您可以创建桌面快捷方式来启动Linux程序,将它们集成到批处理脚本或PowerShell脚本中,或者以其他任何方式运行Windows程序来运行它们。

从Bash运行Windows程序

有关的:如何从Windows 10的Bash Shell运行Windows程序

从Creators Update(2017年春季发布)开始,您可以在Linux环境中运行Windows程序。这意味着您可以在Bash脚本中将Windows命令与Linux命令集成在一起,或者仅从您可能已经在使用的标准Bash或Zsh Shell中运行Windows命令。

要运行Windows程序,请键入.exe文件的路径,然后按Enter。您可以在Bash环境中的/ mnt / c文件夹下找到已安装的Windows程序。请记住,该命令区分大小写,因此“ Example.exe”与Linux中的“ example.exe”不同。

运行图形化Linux桌面程序

有关的:如何从Windows 10的Bash Shell运行图形化Linux桌面应用程序

Microsoft并未正式支持Windows上的图形Linux软件。适用于Linux的Windows子系统功能旨在运行开发人员可能需要的命令行程序。但是实际上可以使用此功能在Windows上运行图形化Linux桌面程序。

但是,默认情况下,这将无法正常工作。您需要安装X服务器并设置 展示 图形化Linux桌面程序将在Windows桌面上运行之前,请先设置此变量。应用程序越简单,运行良好的可能性就越大。该应用程序越复杂,它越有可能尝试做Microsoft不支持Linux的基础Windows子系统的事情。您所能做的就是尝试一下这些说明,并希望取得最好的成绩。

选择您的默认Linux环境

有关的:如何在Windows 10上设置默认Linux发行版

如果安装了多个Linux发行版,则可以选择默认安装。这是在使用以下命令启动Linux发行版时使用的发行版 重击 或者 wsl 命令,或者当您使用 bash -c 或者 wsl 命令从Windows的其他位置运行Linux命令。

即使您安装了多个Linux发行版,您仍然可以通过运行以下命令直接启动它们 ubuntu 或者 opensuse-42。您需要的确切命令在Microsoft Store的每个Linux发行版的下载页面上都有详细说明。

从文件资源管理器快速启动Bash

有关的:如何从Windows 10的文件资源管理器中快速启动Bash Shell

您无需从其快捷方式图标启动Linux Shell。您可以在文件资源管理器中快速启动它,方法是在地址栏中键入“ bash”,然后按Enter。将显示默认的Linux发行版的Bash shell,当前工作目录将是您在文件资源管理器中打开的目录。

该文章还提供了有关通过编辑Windows注册表为文件资源管理器添加“此处打开Bash shell”选项的说明,为您提供了一个便捷的上下文菜单选项,其类似于“此处打开PowerShell窗口”或“此处打开命令提示符”选项。

更改您的UNIX用户帐户

有关的:如何在Windows 10的Ubuntu Bash Shell中更改用户帐户

首次设置Bash时,系统会提示您创建UNIX用户帐户并设置密码。每次您打开Bash窗口时,系统都会自动使用此帐户登录。如果要更改UNIX用户帐户(或将root帐户用作外壳程序中的默认帐户),则可以使用隐藏命令更改默认用户帐户。

卸载并重新安装Linux环境

有关的:如何卸载(或重新安装)Windows 10的Ubuntu Bash Shell

安装某些程序或更改某些设置后,您可能需要重新安装Ubuntu或其他Linux发行版,并获得全新的Linux环境。以前这有点复杂,但是现在您可以像卸载其他任何应用程序一样简单地通过卸载Linux发行版,然后从应用商店中重新安装来完成此操作。

要获得全新的系统而无需重新下载Linux发行版,可以从Windows命令提示符或PowerShell控制台运行发行版的命令以及“ clean”选项。例如,要重置Ubuntu而不重新下载它,请运行 ubuntu清洁 .

如果您仍然安装了较旧的Linux环境(在Fall Creators Update之前安装了一个Linux环境),则仍可以使用lxrun命令将其卸载。

升级您的Ubuntu环境

有关的:如何将Windows Bash Shell更新到Ubuntu 16.04

Windows 10的Fall Creators Update之后,您现在必须从Store安装Ubuntu和其他Linux环境。完成此操作后,它们将自动更新为最新版本,而无需任何特殊命令。

但是,如果您在较旧版本的Windows上创建了Bash环境,则将安装较旧的Ubuntu环境。您只需打开应用商店,然后从Windows应用商店安装最新的Ubuntu即可进行升级。

进取的极客们无疑会弄清楚您将来在Linux环境中可以做的其他有趣的事情。希望用于Linux的Windows子系统将继续变得更强大,但是不要指望Microsoft会在短期内正式支持图形化Linux桌面应用程序。


$config[zx-auto] not found$config[zx-overlay] not found