现在Win10下用WSL(Windows Subsystem Linux - bash)开发程序基本上没问题了,包括上一篇Docker也能使用了。
凭借整站使用H5建站的创新体验、定制设计、设计团队积累与透明式的服务过程,符合行业特点,专属顾问根据企业产品,消费群体属性,准确定位;设计师以目标客户为中心,以突出品牌官网特性为宗旨,定制专属网站建设设计方案。
但某些时候,你可能还是要用到Linux上的图形界面程序,比如Pycharm, Sublime Text等,因为它们集成WSL Bash环境会更方便使用。
其实越来越多的程序,都开始原生支持WSL了,比如VS Code。
但Pycharm、Sublime暂时还不(免费)支持。
如何解决?很简单,目前阶段,先装个XServer就能用,速度没啥区别。
下图是我连接WSL上的Pycharm CE,可以看到,Terminal窗口显示的python,是Linux的python:
Install the lastest version of VcXsrv
配置文件: ~/.bashrc
我一般选“Multiple Window”
比如WSL 输入: startxfce4 ,XLaunch窗口就会跳出来以下窗口:
加个快捷方式:
sudo ln -s /opt/pycharm-community-2018.3.5/bin/pycharm.sh /usr/bin/pycharm
打开 bash ,直接输入 pycharm 就能运行了!
WSL 是适用于 Linux 的 Windows 子系统,可让开发人员按原样运行 GNU/Linux 环境 - 包括大多数命令行工具、实用工具和应用程序 - 且不会产生传统虚拟机或双启动设置开销。
WSL 分为两个版本,一个是 WSL1,一个是 WSL2,WSL2 是 WSL1 的升级版,主要优势是:
WSL2 建议不要跨操作系统使用文件,若想获得最快的性能速度,请将文件存储在 WSL 文件系统中,在存储时,使用 Linux 文件系统根目录: \\wsl$\Ubuntu-20.04\home\user name\Project 。
访问 WSL2 文件系统,可以运行命令 WIN+R 或在文件资源管理器地址栏中键入 \\wsl$ ,以查找相应的分发名称并访问其根文件系统。
大多数情况下我们会使用 WSL2,但在以下情况,请考虑使用 WSL1:
可以使用 localhost 从 Windows 上访问 Linux 分发版中的应用。
如果要从 Linux 分发版访问 Windows 上运行的网络应用,则需要使用主机的 IP 地址。 你可以执行以下步骤来使其可行。
当使用远程 IP 地址连接到应用程序时,它们将被视为来自局域网 (LAN) 的连接。 这意味着你需要确保你的应用程序可以接受 LAN 连接。例如,你可能需要将应用程序绑定到 0.0.0.0 而非 127.0.0.1 。
当使用 WSL 1 分发版时,如果计算机设置为可供 LAN 访问,那么在 WSL 中运行的应用程序也可供在 LAN 中访问。
这不是 WSL 2 中的默认情况,WSL 2 有一个带有其自己独一无二的 IP 地址的虚拟化以太网适配器。 目前,若要启用此工作流,你需要执行与常规虚拟机相同的步骤。下面是一个示例 PowerShell 命令,用于添加侦听主机上的端口 4000 的端口代理并将其连接到端口 4000,并使用 IP 地址 192.168.101.100 连接到 WSL 2 VM。
使用 wsl Linux命令 可以在 CMD 或 PowerShell 运行 Linux 命令,示例:
以这种方式运行的命令使用的是同一个工作目录,并且以 WSL 默认用户的身份运行,拥有与调用方进程和终端相同的 Windows 管理权限。
WSL 可以使用 [tool-name].exe 直接从 WSL 命令行运行 Windows 工具。 例如, notepad.exe 。
以这种方式运行的应用程序具有相同的工作目录,拥有与 WSL 进程相同的权限,以活动 Windows 用户的身份运行,显示在 Windows 任务管理器中。
WSL 还有一些高级用法,比如更改磁盘大小,文件权限,环境变量等,具体配置可以参考官方文档。
Linux的Windows子系统让开发人员可以直接在Windows上运行Linux环境(包括大多数命令行工具,实用程序和应用程序),而无需建立在虚拟机的开销之上,整个系统共200多M,但包含了你能用到的所有功能,并且和windows完美互操作(省去Linux挂载本地windows分区或目录的操作),目前Linux的windows子系统已经相当完善,可当作完整linux系统使用.
您可以:
从Windows应用商店中 选择您最喜爱的Linux发行版。
运行常用的命令行实用程序,如grep,sed,awk等。
运行Bash shell脚本和Linux命令行应用程序,包括:
工具:vim,emacs,tmux
语言:Javascript / node.js,Ruby,Python,C / C ++,C#和F#,Rust,Go等
服务:sshd,MySQL,Apache,lighttpd
使用发行版的内置包管理器(apt-get)安装其他Linux工具。
从Linux控制台调用Windows应用程序。
在Windows上调用Linux应用程序。
1、打开 [控制面板]
2、找到 [程序与功能] 处的 [启用或关闭windows功能]
3、在 [适用于linux的windows子系统] 一栏处打上勾
4、点击确定并重启电脑
注:以上步骤在win10专业版上测试,win10家庭版可能不支持
使用快捷键: 微软光标键+S 搜索 "功能"
进入功能
勾选适用于Linux的Windows子系统
或者直接PowerShell中运行以下命令
然后出现提示重新启动计算机
在应用商店搜索“Linux”,选择您喜欢的Linux版本,推荐安装Ubuntu
注意:应用商店的程序使用默认路径,不要更换到其他盘符
安装完毕后开始菜单出现Ubuntu图标
现在可以在里面进行任何和linux相关的命令
或者在Windows商店里直接启动
进入Ubuntu系统会自动初始化并安装,稍等几分钟即可
Enjoy !
切记:小心执行 mkdir -rf mnt
列出所有子系统并查看子系统名称
wsl -l
导出当前子系统
wsl --export Ubuntu-18.04 d:\ubuntu18_export.tar
导入子系统
wsl --import ubuntu18 d:\wsl\ubuntu d:\ubuntu18_export.tar
修改默认启动用户
echo -e "[user]\ndefault=oduser" /etc/wsl.conf
强行关闭并重启
wsl --shutdown
参考wsl命令参数