当前位置:首页>Linux>Linux:新手小白如何安装WSL

Linux:新手小白如何安装WSL

  • 2026-10-21 13:30:00
Linux:新手小白如何安装WSL

楔子

大家好,我是张桃狮。

最近我在力扣做题的时候,遇到一些Linux相关的题目。

我上一次使用Linux,还是二十年前刚买电脑的时候。

当时我给自己的电脑安装了Ubuntu系统——一个Linux的发行版。

使用Ubuntu的时候,我每天都在折腾显卡驱动,我记得安装一些软件还需要自己手动编译源码。

后来我还是用回了Windows。

现在如果我把家里的电脑安装Linux系统,瓜瓜会打死我的。

还好我发现了WSL这个好东东。

WSL(Windows Subsystem for Linux)是微软推出的Windows 内置兼容层,能让你在 Windows 系统上原生运行 Linux 发行版(如 Ubuntu、Debian),无需虚拟机或双系统。

它的核心优势是Windows 与 Linux 无缝互通,可以直接访问 Windows 磁盘文件、共享网络端口。

可以看出,WSL非常适合小白在Windows 上学习Linux。

安装之前,需要先检查CPU硬件是否支持。

按Ctrl+Shift+Esc,打开任务管理器-性能-CPU,看右下角的虚拟化是否已启用。

如果是关闭状态,需要重启电脑进BIOS开启。

我家的电脑是AMD的CPU,BIOS虚拟化开启步骤如下。

Frequency Settings-Advanced CPU Core Settings-SVM Mode(安全虚拟机模式),设为Enabled。

最后记得保存退出。

Intel的CPU开启步骤可能不一样,大家可以自己问下AI。

用管理员权限打开cmd,输入如下命令回车。

wsl --install

如果有报错,就把报错信息发给AI。

我用的豆包,豆包给出的一些操作建议,说实话我都不知道是干啥的,心里捏了一把汗。

还好最后把所有遇到的问题都解决了。

安装过程中可能需要重新启动电脑。

我在最后一步卡了很久,每次下载Ubuntu都不成功。

最后手动下载了Ubuntu,用的网友提供的下载地址。

下载地址如下。

https://aka.ms/wslubuntu2204

如果觉得下载速度太慢,可以用迅雷。

下载下来后,双击打开就可以自动安装Ubuntu了。

第一次打开需要设置用户名和密码。

一定要记好密码,后续使用sudo命令的时候还要输入。

安装好以后,我在开始菜单看到了Ubuntu的图标。

也可以在搜索里搜索WSL直接打开Linux终端。

打开后是一个黑乎乎的终端窗口,我输入ls,相当于cmd下面的dir。

看着终端窗口中显示出的文件列表,我感觉WSL终于安装成功了。

我想整点比较酷的东西庆祝一下。

输入sudo apt install cmatrix -y

装好以后输入cmatrix,可以看到黑客帝国字符雨动画。

在我的电脑上,如果是在Windows环境复制的文本,在Linux窗口粘贴需要单击鼠标右键。

打开Windows C盘需要输入cd /mnt/c。

打开Windows桌面需要输入cd /mnt/c/Users/你的Windows用户名/Desktop。

最后说一下为什么要学习Linux?

现在Linux已经是云服务器的事实标准了,我一直想有一台自己的云服务器。

闲话讲完,咱们开始刷Linux相关的力扣题目。

193. 有效电话号码

给定一个包含电话号码列表(一行一个电话号码)的文本文件 file.txt,写一个单行 bash 脚本输出所有有效的电话号码。

你可以假设一个有效的电话号码必须满足以下两种格式: (xxx) xxx-xxxx 或 xxx-xxx-xxxx。(x 表示一个数字)

你也可以假设每行前后没有多余的空格字符。

示例:

假设 file.txt 内容如下:

987-123-4567

123 456 7890

(123) 456-7890

你的脚本应当输出下列有效的电话号码:

987-123-4567

(123) 456-7890

我的思路

Bash = Bourne Again Shell,是 Unix/Linux 系统中最主流的 命令行解释器 (Shell)。

之前我没有接触过Bash脚本,不过正则表达式还是会的。

先写出匹配第一种电话号码格式的正则表达式。

^\d{3}-\d{3}-\d{4}$

在写匹配第二种电话号码格式的正则表达式。

注意这里有一个空格,我刚开始没注意,被小坑一把。

^\(\d{3}\) \d{3}-\d{4}$

然后将两个正则表达式用|连起来。

^\d{3}-\d{3}-\d{4}$|^\(\d{3}\) \d{3}-\d{4}$

如果用影刀来做这道题,就简单了。

先把file.txt的内容读取出来,用换行符将电话号码拆分为列表。

列表循环,用上面的正则表达式提取有效的电话号码并输出。

光说不练假把式,影刀应用截图如下。

提交运行通过。

可是bash脚本怎么写,我只能看官方题解了。

结果这道题没有官方题解。

我将网友高赞题解(来自會飛的鳥)中的正则表达式做了替换,也提交通过了。

grep -P '^\d{3}-\d{3}-\d{4}$|^\(\d{3}\) \d{3}-\d{4}$' file.txt
awk '/^[0-9]{3}-[0-9]{3}-[0-9]{4}$|^\([0-9]{3}\) [0-9]{3}-[0-9]{4}$/' file.txt

grep 是 Linux/Unix/WSL 中最最常用的命令行工具,没有之一!

核心作用:在「文本 / 文件 / 命令输出结果」中,按「关键字 / 正则表达式」搜索、筛选、提取内容。

grep参数-P :启用「Perl 兼容正则表达式」——让 grep 支持 非贪婪匹配 .*?、\d(匹配数字)、\w(匹配字母) 等完整正则语法。

awk 是 Linux/Unix/WSL 中最核心的「文本处理工具 + 编程语言」,它不是一个简单的命令,而是一套专门用来处理「结构化文本」的完整工具。

awk 只支持POSIX标准正则,POSIX标准正则不支持\d(简写),只支持 [0-9]。

所以需要将正则表达式中\d替换为[0-9],才能提交成功。

grep:擅长「过滤行」 → 按条件筛选出符合要求的整行内容。

awk:擅长「处理列」 → 按列提取、分割、计算、格式化输出内容。

Ubuntu 所有版本(包括桌面版、服务器版),都默认预装了 grep 和 awk 工具,无需手动安装,打开终端直接输入命令就能用,这两个是 Linux/Ubuntu 的核心系统工具,属于必装基础组件。

所以想要练习使用grep 和 awk,只要打开WSL就好了。

最后说下Bash(Bourne Again Shell)名字的由来。

1979 年,Stephen Bourne 在贝尔实验室开发出了 Unix 系统的第一个主流 Shell → Bourne Shell,它的可执行文件路径是 /bin/sh,是 Unix 的初代标准 Shell

1989 年,为了弥补 Bourne Shell 的功能短板(语法简陋、无补全、无历史命令等),Brian Fox 基于 Bourne Shell 的语法规范,开发出了增强版,命名为 Bourne Again Shell

Bourne Again 发音和拼写 ≈ Born Again(英文短语,意思是「重生、再生、浴火重生」)

翻译过来的双关就是:Bash = 伯恩的 Shell 重生了。

我是个编程爱好者,小白级别的,如果你跟我一样希望通过力扣刷题,学习各种奇妙的算法,可以关注我,大家一起学习。

最新文章

随机文章