参考:

https://learn.microsoft.com/zh-cn/windows/wsl/basic-commands

https://blog.csdn.net/u010099177/article/details/125704313

=========================================

原文地址:

https://learn.microsoft.com/zh-cn/windows/wsl/basic-commands

 
 
----------------------------------------------------------------
 

以下 WSL 命令以 PowerShell 或 Windows 命令提示符支持的格式列出。 若要通过 Bash/Linux 发行版命令行运行这些命令,必须将 wsl 替换为 wsl.exe。 若要获取完整的命令列表,请运行 wsl --help

安装

PowerShell复制

 
wsl --install

安装 WSL 和 Linux 的默认 Ubuntu 发行版。 了解详细信息。 还可以使用此命令通过运行 wsl --install <Distribution Name> 来安装其他 Linux 发行版。 若要获取发行版名称的有效列表,请运行 wsl --list --online

选项包括:

  • --distribution:指定要安装的 Linux 发行版。 可以通过运行 wsl --list --online 来查找可用的发行版。
  • --no-launch:安装 Linux 发行版,但不自动启动它。
  • --web-download:通过联机渠道安装,而不是使用 Microsoft Store 安装。

未安装 WSL 时,选项包括:

  • --inbox:使用 Windows 组件(而不是 Microsoft Store)安装 WSL。 (WSL 更新将通过 Windows 更新接收,而不是通过 Microsoft Store 中推送的可用更新来接收)。
  • --enable-wsl1:在安装 Microsoft Store 版本的 WSL 的过程中也启用“适用于 Linux 的 Windows 子系统”可选组件,从而启用 WSL 1。
  • --no-distribution:安装 WSL 时不安装发行版。

备注

如果在 Windows 10 或更低版本上运行 WSL,可能需要在 --install 命令中包含 -d 标志以指定发行版:wsl --instal -d <distribution name>

列出可用的 Linux 发行版

PowerShell复制

 
wsl --list --online

查看可通过在线商店获得的 Linux 发行版列表。 此命令也可输入为:wsl -l -o

列出已安装的 Linux 发行版

PowerShell复制

 
wsl --list --verbose

查看安装在 Windows 计算机上的 Linux 发行版列表,其中包括状态(发行版是正在运行还是已停止)和运行发行版的 WSL 版本(WSL 1 或 WSL 2)。 比较 WSL 1 和 WSL 2。 此命令也可输入为:wsl -l -v。 可与 list 命令一起使用的其他选项包括:--all(列出所有发行版)、--running(仅列出当前正在运行的发行版)或 --quiet(仅显示发行版名称)。

将 WSL 版本设置为 1 或 2

PowerShell复制

 
wsl --set-version <distribution name> <versionNumber>

若要指定运行 Linux 发行版的 WSL 版本(1 或 2),请将 <distribution name> 替换为发行版的名称,并将 <versionNumber> 替换为 1 或 2。 比较 WSL 1 和 WSL 2

设置默认 WSL 版本

PowerShell复制

 
wsl --set-default-version <Version>

若要将默认版本设置为 WSL 1 或 WSL 2,请将 <Version> 替换为数字 1 或 2,表示对于安装新的 Linux 发行版,你希望默认使用哪个版本的 WSL。 例如,wsl --set-default-version 2。 比较 WSL 1 和 WSL 2

设置默认 Linux 发行版

PowerShell复制

 
wsl --set-default <Distribution Name>

若要设置 WSL 命令将用于运行的默认 Linux 发行版,请将 <Distribution Name> 替换为你首选的 Linux 发行版的名称。

将目录更改为主页

PowerShell复制

 
wsl ~

~ 可与 wsl 一起使用,以在用户的主目录中启动。 若要在 WSL 命令提示符中从任何目录跳回到主目录,可使用命令 cd ~

通过 PowerShell 或 CMD 运行特定的 Linux 发行版

PowerShell复制

 
wsl --distribution <Distribution Name> --user <User Name>

若要通过特定用户运行特定 Linux 发行版,请将 <Distribution Name> 替换为你首选的 Linux 发行版的名称(例如 Debian),将 <User Name> 替换为现有用户的名称(例如 root)。 如果 WSL 发行版中不存在该用户,你将会收到一个错误。 若要输出当前用户名,请使用 whoami 命令。

更新 WSL

PowerShell复制

 
wsl --update

将 WSL 版本更新到最新版本。 选项包括:

  • --web-download:从 GitHub 而不是 Microsoft Store 下载最新更新。

检查 WSL 状态

PowerShell复制

 
wsl --status

查看有关 WSL 配置的常规信息,例如默认发行版类型、默认发行版和内核版本。

检查 WSL 版本

PowerShell复制

 
wsl --version

检查有关 WSL 及其组件的版本信息。

Help 命令

PowerShell复制

 
wsl --help

查看 WSL 中可用的选项和命令列表。

以特定用户的身份运行

PowerShell复制

 
wsl -u <Username>`, `wsl --user <Username>

若要以指定用户身份运行 WSL,请将 <Username> 替换为 WSL 发行版中存在的用户名。

更改发行版的默认用户

PowerShell复制

 
<DistributionName> config --default-user <Username>

更改用于发行版登录的默认用户。 用户必须已经存在于发行版中才能成为默认用户。

例如:ubuntu config --default-user johndoe 会将 Ubuntu 发行版的默认用户更改为“johndoe”用户。

备注

如果在确定发行版名称时遇到问题,请使用命令 wsl -l

警告

此命令不适用于导入的发行版,因为这些发行版没有可执行启动器。 可以改为使用 /etc/wsl.conf 文件来更改导入的发行版的默认用户。 请参阅高级设置配置文档中的“自动装载”选项。

关闭

PowerShell复制

 
wsl --shutdown

立即终止所有正在运行的发行版和 WSL 2 轻量级实用工具虚拟机。 在需要重启 WSL 2 虚拟机环境的情形下,例如更改内存使用限制或更改 .wslconfig 文件,可能必须使用此命令。

Terminate

PowerShell复制

 
wsl --terminate <Distribution Name>

若要终止指定的发行版或阻止其运行,请将 <Distribution Name> 替换为目标发行版的名称。

导入和导出发行版

PowerShell复制

 
wsl --export <Distribution Name> <FileName>
PowerShell复制

 
wsl --import <Distribution Name> <InstallLocation> <FileName>

将指定 tar 文件导入和导出为新的发行版。 在标准输入中,文件名可以是 -。 选项包括:

  • --vhd:指定导入/导出发行版应为 .vhdx 文件,而不是 tar 文件
  • --version:(仅导入)指定将发行版导入为 WSL 1 还是 WSL 2 发行版

就地导入发行版

PowerShell复制

 
wsl --import-in-place <Distribution Name> <FileName>

将指定的 .vhdx 文件导入为新的发行版。 虚拟硬盘必须采用 ext4 文件系统类型格式。

注销或卸载 Linux 发行版

尽管可以通过 Microsoft Store 安装 Linux 发行版,但无法通过 Store 将其卸载。

注销并卸载 WSL 发行版:

PowerShell复制

 
wsl --unregister <DistributionName>

如果将 <DistributionName> 替换为目标 Linux 发行版的名称,则将从 WSL 取消注册该发行版,以便可以重新安装或清理它。 警告:取消注册后,与该分发版关联的所有数据、设置和软件将永久丢失。 从 Store 重新安装会安装分发版的干净副本。 例如:wsl --unregister Ubuntu 将从可用于 WSL 的发行版中删除 Ubuntu。 运行 wsl --list 将会显示它不再列出。

还可以像卸载任何其他应用商店应用程序一样卸载 Windows 计算机上的 Linux 发行版应用。 若要重新安装,请在 Microsoft Store 中找到该发行版,然后选择“启动”。

装载磁盘或设备

PowerShell复制

 
wsl --mount <DiskPath>

通过将 <DiskPath> 替换为物理磁盘所在的目录\文件路径,在所有 WSL2 发行版中附加和装载该磁盘。 请参阅在 WSL 2 中装载 Linux 磁盘。 选项包括:

  • --vhd:指定 <Disk> 引用虚拟硬盘。
  • --name:使用装入点的自定义名称装载磁盘
  • --bare:将磁盘附加到 WSL2,但不进行装载。
  • --type <Filesystem>:装载磁盘时使用的文件系统类型默认为 ext4(如果未指定)。 此命令也可输入为:wsl --mount -t <Filesystem>。可以使用 blkid <BlockDevice> 命令检测文件系统类型,例如:blkid <dev/sdb1>
  • --partition <Partition Number>:要装载的分区的索引号默认为整个磁盘(如果未指定)。
  • --options <MountOptions>:装载磁盘时,可以包括一些特定于文件系统的选项。 例如,wsl --mount -o "data-ordered" 或 wsl --mount -o "data=writeback 之类的 ext4 装载选项。 但是,目前仅支持特定于文件系统的选项。 不支持通用选项,例如 rorw 或 noatime

备注

如果你正在运行 32 位进程来访问 wsl.exe(一种 64 位工具),那么你可能需要按如下方式运行此命令:C:\Windows\Sysnative\wsl.exe --command

卸载磁盘

PowerShell复制

 
wsl --unmount <DiskPath>

卸载磁盘路径中给定的磁盘,如果未提供磁盘路径,则此命令将卸载并分离所有已装载的磁盘。

=========================================

 

【转载】WSL 的基本命令的更多相关文章

  1. 【转载】gdb基本命令总结

    本文介绍使用gdb调试程序的常用命令. 主要内容: [简介] [举例] [其他] [简介]  ============= GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具.如果你是在 U ...

  2. Hadoop的基本命令【转载】

    在这篇文章中,我们默认认为Hadoop环境已经由运维人员配置好直接可以使用. 假设Hadoop的安装目录HADOOP_HOME为/home/admin/hadoop. 启动与关闭 启动HADOOP 进 ...

  3. vim基本命令(转载自网络)

    来源于<Unix初级教程(第四版)>. 命令模式切换到文本输入模式: 键 功能 i 在光标左侧输入文本 I 在当前行的行首输入文本 a 在光标右侧输入文本 A 在当前行的行尾输入文本 o ...

  4. 管理11gRAC基本命令 (转载)

    在 Oracle Clusterware 11g 第 2 版 (11.2) 中,有许多子程序和命令已不再使用:    crs_stat    crs_register    crs_unregiste ...

  5. 管理11gRAC基本命令 (转载) 很详细

    在 Oracle Clusterware 11g 第 2 版 (11.2) 中,有许多子程序和命令已不再使用:    crs_stat    crs_register    crs_unregiste ...

  6. 【FFmpeg】FFmpeg常用基本命令(转载)

    转自:http://www.cnblogs.com/dwdxdy/p/3240167.html 1.分离视频音频流 ffmpeg -i input_file -vcodec copy -an outp ...

  7. [CoreOS 转载] CoreOS实践指南(五):分布式数据存储Etcd(上)

    转载:http://www.csdn.net/article/2015-01-22/2823659 摘要:在“漫步云端:CoreOS实践指南”系列的前几篇,分别介绍了如何架设CoreOS集群,系统服务 ...

  8. Linux防火墙iptables学习笔记(三)iptables命令详解和举例[转载]

     Linux防火墙iptables学习笔记(三)iptables命令详解和举例 2008-10-16 23:45:46 转载 网上看到这个配置讲解得还比较易懂,就转过来了,大家一起看下,希望对您工作能 ...

  9. [转载] ping和telnet的区别

    转载自:http://www.cnblogs.com/Jtianlin/p/4045021.html windown7下打开telnet功能: 控制面板 --- > 程序(小图标下直接到[程序和 ...

  10. php进阶之路--转载

    之前有看过相关的文章,觉得还是这篇详细点,有具体的目标实现起来才更有动力 转载自:http://wen.52fhy.com/2016/2016-09-03-PHP-cheng-xu-yuan-xue- ...

随机推荐

  1. JavaScript中如何终止forEach循环&跳出for(双层)循环?

    在JavaScript中,forEach方法是用于遍历数组的,通常没有直接终止循环的机制.然而,我们可以使用一些技巧来模拟终止forEach循环.以下是几种常见的方法 1.使用return语句:在fo ...

  2. PhantomReference 和 WeakReference 究竟有何不同

    本文基于 OpenJDK17 进行讨论,垃圾回收器为 ZGC. 提示: 为了方便大家索引,特将在上篇文章 <以 ZGC 为例,谈一谈 JVM 是如何实现 Reference 语义的> 中讨 ...

  3. 解决 Xshell 无法使用 zsh 的 prompt style

    为了更好的阅读体验,请点击这里 先学习一下 zsh 的配置吧~ 参考资料 从 0 开始:教你如何配置 zsh powerlevel10k 如何给 Xshell 配置呢 当我安装完 oh-my-zsh. ...

  4. Java开发者的神经网络进阶指南:深入探讨交叉熵损失函数

    前言 今天来讲一下损失函数--交叉熵函数,什么是损失函数呢?大体就是真实与预测之间的差异,这个交叉熵(Cross Entropy)是Shannon信息论中一个重要概念,主要用于度量两个概率分布间的差异 ...

  5. docker配置域名

    先运行docker镜像 # 进入 docker 容器 mynginx 是容器名 docker exec -i -t mynginx /bin/bash #安装vim apt-get install v ...

  6. ABP框架开发实例教程-生成框架代码

    ABP是"ASP.NET Boilerplate Project (ASP.NET样板项目)"的简称.ASP.NET Boilerplate是一个用最佳实践和流行技术开发现代WEB ...

  7. v-if 和 v-show 有什么区别?

    v-if 是真正的条件渲染,会控制这个 DOM 节点的存在与否.因为它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建:也是惰性的:如果在初始渲染时条件为假,则什么也不做--直到条件第 ...

  8. 2024 年 Visual Studio 实用插件集合

    前言 在软件开发领域,选择正确的工具可以极大地提升开发效率和质量. Visual Studio作为微软推出的强大集成开发环境(IDE),通过安装合适的插件,可以进一步增强其功能,满足开发者多样化的需求 ...

  9. 编程好帮手:通义灵码(TONGYI Lingma),是阿里云出品的一款基于通义大模型的智能编码辅助工具

    通义灵码(TONGYI Lingma),是阿里云出品的一款基于通义大模型的智能编码辅助工具,提供行级/函数级实时续写.自然语言生成代码.单元测试生成.代码注释生成.代码解释.研发智能问答.异常报错排查 ...

  10. SQL查询语句汇总

    SQL查询语句汇总 students表 id class_id name gender score 1 1 小明 M 90 2 1 小红 F 95 class表 id name 1 一班 2 二班 3 ...