给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设置上图标。

最终效果

  1. 快捷方式有图标
  2. 打开不用无终端窗口显示日志
  3. 可以在Windows 搜索中找到该WSL应用

更新:
如果使用wslg 正常在 /usr/share/applications目录中创建应用程序快捷方式即可,然后在Windows的菜单中可以找到该应用。

posted @ 2022-03-25 11:59  oaksharks  阅读(1753)  评论(0编辑  收藏  举报