win安装WSL和win使用shell

一、安装WSL

WSL解释:

WSL = Windows Subsystem for Linux(Windows 的 Linux 子系统)

1、它是 微软官方 在 Windows 10/11 中内置的功能

2、允许你在 Windows 系统内部 直接运行完整的 Linux 环境

3、不需要虚拟机(如 VMware、VirtualBox)

4、不需要双系统(无需重启切换)

WSL对比:

方式 启动速度 资源占用 文件互访 图形界面
WSL ⚡ 秒级启动 低(共享内核) 双向直接访问 支持(需配置)
虚拟机 🐢 较慢(1-2分钟) 高(独立系统) 需共享文件夹 完整支持
双系统 🐌 最慢(重启) 独占硬件 无法直接访问 完整支持

WSL和WSL2区别:

|--------------------------------------------------------|---------------------------------------------------------------|
| WSL1(架构模拟) | WSL2(真实 Linux 内核) |
| Windows + Linux 程序 ↓ WSL 转换层(兼容层) ↓ Windows 内核 | Windows + Linux 程序 ↓ 真实 Linux 内核(轻量级虚拟机) ↓ Windows 内核 |
| 特点:文件性能好,系统调用需要转换 | 特点:完整的 Linux 系统调用,Docker 支持好 |

WSL安装

bash 复制代码
#1、在win的cmd中执行如下命令,这个命令默认会打开wsl、安装wsl2、以及安装默认的wsl需要的ubuntu系统
wsl --install


#2、如果已经有wsl图标,双击打开闪退,可能是没有需要的系统,执行下面cmd代码进行安装ubuntu(完整版ubuntu系统,1-2G)
wsl --install -d Ubuntu
#或者制定版本
wsl --install -d Ubuntu-22.04

然后wsl就有ubuntu系统了

二、设置wsl开机自启动

查看wsl的完整路径:C:\Windows\System32\wsl.exe

然后把这个位置放到开机自启动文件夹

copy "C:\Windows\System32\wsl.exe" "%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\"

因为我已经添加过了,所以提示我覆盖。添加后自启动设置成功。

三、把脚本添加到定时任务

用sercice不用systemctl启动定时任务,是因为wsl的ubuntu没有systemctl

bash 复制代码
#查看定时任务cron状态,发现没启动
huangchaofan@ZB-PW0B470Y:/$ sudo service cron status
 * cron is not running

#启动cron
huangchaofan@ZB-PW0B470Y:/$ sudo service cron --full-restart
 * Stopping periodic command scheduler cron                                                                      [ OK ]
 * Starting periodic command scheduler cron                                                                      [ OK ]


#再次查看状态
huangchaofan@ZB-PW0B470Y:/$ service cron status
 * cron is running

#添加定时任务,设置如下定时任务,然后保存,就生效了
huangchaofan@ZB-PW0B470Y:~$ crontab -e
    #添加网络走查定时任务
    40 8 * * * /home/huangchaofan/jiaoben/wangluo.sh
    10 14 * * * /home/huangchaofan/jiaoben/wangluo.sh
复制代码
相关推荐
fengyehongWorld2 小时前
TeraTerm ttl脚本登录wsl
linux·teraterm
乌托邦的逃亡者2 小时前
Linux中如何检测IP冲突
linux·运维·tcp/ip
一曦的后花园2 小时前
linux搭建promethes并对接node-exporter指标
linux·运维·服务器
乌托邦的逃亡者3 小时前
CentOS/Openeuler主机中,为一个网卡设置多个IP地址
linux·运维·网络·tcp/ip·centos
念恒123064 小时前
进程控制---自定义Shell
linux·c语言
风曦Kisaki4 小时前
# Linux Shell 编程入门 Day02:条件测试、if 判断、循环与随机数
linux·运维·chrome
李日灐4 小时前
< 6 > Linux 自动化构建工具:makefile 详解 + 进度条实战小项目
linux·运维·服务器·后端·自动化·进度条·makefile
嵌入式×边缘AI:打怪升级日志5 小时前
嵌入式Linux开发:开源组件、第三方库与许可证详解
linux
计算机安禾5 小时前
【Linux从入门到精通】第34篇:搭建FTP与Samba——跨平台文件共享解决方案
linux·运维·服务器
日取其半万世不竭5 小时前
用 Netdata 实时监控服务器,比 Prometheus + Grafana 轻量得多
linux·服务器·网络·系统架构·负载均衡·zabbix·grafana