怎样通过WSL来运行脚本呢?

常见问题 2025-08-23 738

最近总听同事念叨“WSL真香”,说是在Windows系统里能直接跑Linux脚本,省得装双系统或者虚拟机,我这种电脑小白一开始还半信半疑,结果自己试了试,发现这玩意儿确实好用!今天就把我的实战经验分享出来,保证让零基础的朋友也能跟着操作。

WSL到底是个啥?

先说个真实场景:上周我想用Python跑个爬虫脚本,结果发现公司电脑装的Windows系统里没有Linux环境下的某些依赖库,重装系统?太麻烦!装虚拟机?电脑配置不够卡成PPT,这时候同事给我推荐了WSL(Windows Subsystem for Linux),说是微软官方出的“黑科技”,能在Windows里直接运行Linux系统。

如何使用WSL运行脚本-项目实施-项目实施

WSL就像给Windows装了个“Linux翻译器”,不用分区不用双系统,就能用Linux的命令行工具,现在最新的是WSL2,性能比第一代强很多,还能直接调用Windows的文件系统。

安装WSL的详细步骤(附截图说明)

  1. 开启系统功能
    按Win+R输入powershell,右键选择“以管理员身份运行”,然后输入这行命令:

    wsl --install

    系统会自动下载并安装Ubuntu(默认发行版),如果提示错误,可能是系统版本不够新,需要先升级到Windows10 2004或更高版本。

  2. 设置用户名和密码
    安装完成后重启电脑,打开开始菜单找到“Ubuntu”图标,第一次运行会让你设置用户名和密码。注意:这个密码输入时不会显示星号,直接盲打就行(别慌,我第一次也以为卡死了)。

  3. 更新系统包
    进入Ubuntu终端后,先运行这两条命令更新软件源:

    如何使用WSL运行脚本-项目实施-项目实施
    sudo apt update
    sudo apt upgrade -y

    这里sudo是获取管理员权限,apt是Ubuntu的包管理工具,update更新软件列表,upgrade升级已安装的软件。

运行脚本的三种实用场景

场景1:直接运行Shell脚本
假设有个hello.sh如下:

#!/bin/bash
echo "Hello, WSL!"

保存后,在Ubuntu终端里先给脚本执行权限:

chmod +x hello.sh

然后运行:

./hello.sh

屏幕上就会显示“Hello, WSL!”。关键点:脚本第一行的#!/bin/bash必须写对,否则系统不知道用哪个解释器执行。

场景2:调用Windows的Python脚本
我有个test.py文件放在Windows的D:\scripts目录下,内容是:

print("这是Windows的Python脚本")

在Ubuntu终端里,先进入对应目录(注意路径格式):

cd /mnt/d/scripts

然后直接运行:

python3 test.py

原理:WSL2默认挂载了Windows的磁盘,/mnt/d/对应的就是D盘,这样就能无缝调用Windows的文件。

场景3:定时运行脚本(Cron任务)
想每天自动备份文件?用Linux的Cron服务就行,先编辑Cron表:

crontab -e

选择编辑器(推荐选1,用nano),然后添加一行:

0 3       /bin/bash /mnt/d/scripts/backup.sh

这表示每天凌晨3点运行backup.sh脚本,保存后,Cron服务会自动在后台执行。

常见问题解决方案

  1. 权限不足怎么办?
    如果运行脚本时提示“Permission denied”,记得用chmod +x 脚本名赋予执行权限。

  2. 文件路径混淆
    Windows和Linux的路径格式不同,比如Windows的C:\Users在WSL里要写成/mnt/c/Users

  3. 网络连接问题
    如果脚本需要联网,确保Windows的防火墙没有阻止WSL的网络访问,可以在PowerShell里运行:

    Get-NetFirewallRule | Where-Object { $_.DisplayName -like "WSL " } | Format-Table Name, DisplayName, Enabled

    检查WSL相关的防火墙规则是否启用。

进阶技巧:WSL与VS Code深度整合

微软的VS Code对WSL支持极好,安装“Remote - WSL”扩展后,直接在Ubuntu终端输入:

code .

就能用VS Code打开当前目录,而且所有终端操作都在WSL环境下执行,再也不用在Windows和Linux之间来回切换文件了。

从最初的怀疑到现在的真香,WSL确实解决了我“既要用Windows办公,又要跑Linux脚本”的痛点,现在我每天用WSL跑爬虫、处理日志文件,甚至还用它搭建了本地开发环境,如果你也遇到类似需求,不妨花半小时试试,说不定会打开新世界的大门!

(全文约1200字,实际操作时间约20分钟,适合Windows10/11用户)

怎样实现WSL网络的连接?
« 上一篇 2025-08-22
怎样配置WSL实现文件映射呢?
下一篇 » 2025-08-23

文章评论