给WSL应用程序创建Windows快捷方式
以Pycharm为例子:
1. 找到在子系统中pycharm启动路径
/opt/pycharm-2020.3.5/bin/pycharm.sh
2. 用wsl启动在powershell中启动
假如我的wsl子系统是Ubuntu,启动命令应该是
C:\Windows\System32\wsl.exe -d Ubuntu /opt/pycharm-2020.3.5/bin/pycharm.sh
用这个命令应该可以在powershell 中启动应用的图形界面了。实际上把这个命令放到一个快捷方式
的目标
配置中就可以启动应用了,但是它会产生一个终端窗口。
终端窗口产生的原因是现在在运行一个sh脚本,要输出日志。
3. 使用vb脚本关闭终端窗口
新建一个文件/opt/pycharm-2020.3.5/bin/pycharm.vbs
,写入内容:
set ws=WScript.CreateObject("WScript.Shell")
ws.Run "C:\Windows\System32\wsl.exe -d Ubuntu /home/wuhf/opt/pycharm-2020.3.5/bin/pycharm.sh",0
在windows中双击这个文件应该就可以打开应用程序了,并且不带终端窗口。
4. 设置快捷方式
在目录C:\Users\{username}\AppData\Roaming\Microsoft\Windows\Start Menu\Programs
中新建快捷方式,目标指向:
\\wsl.localhost\Ubuntu\opt\pycharm-2020.3.5\bin\PyCharm.vbs
这样就可以在开始菜单中找到 Pycharm了。然后再找一个pycharm.ico设置上图标。
最终效果
- 快捷方式有图标
- 打开不用无终端窗口显示日志
- 可以在Windows 搜索中找到该WSL应用
更新:
如果使用wslg 正常在 /usr/share/applications
目录中创建应用程序快捷方式即可,然后在Windows的菜单中可以找到该应用。