当前位置:首页 > 嵌入式 > 嵌入式新闻
[导读]借助适用于Linux的Windows子系统(WSL),您可以直接在Linux Shell中运行Windows 10程序,从而减少Windows与Linux之间的差距。

借助适用于Linux的Windows子系统(WSL),您可以直接在Linux Shell中运行Windows 10程序,从而减少Windows与Linux之间的差距。

WSL的优势之一是,您不仅可以在Windows 10中运行Linux发行版,还可以灵活地在Linux中运行Windows 10程序。

这一功能使Linux可以控制Windows的诸多方面,或者使Windows程序能够与WSL文件系统或Linux命令处理的输出进行交互。

它还让WSL用户可以创建影响Linux发行版的复杂外壳脚本,还可以用于在Windows 10中执行命令。

如何从WSL Linux启动Windows 10可执行文件?

Windows 10和Linux都使用“PATH”变量,该变量含有您在执行程序时搜索的文件夹列表。

如果您尝试运行某个程序,但在PATH中找不到该程序,Linux和Windows都会告诉您找不到该程序。在这种情况下,您需要使用完整路径(比如“C:\Notepad2\Notepad.exe”)来启动程序。

Windows 10启动WSL发行版时,它会配置Linux PATH变量,以包含标准的Linux二进制文件夹和常规的Windows 10路径。

您可以通过在WSL外壳提示符下键入env |grep“ PATH”命令来查看该路径。

图1. PATH变量

注意:平常的Windows驱动器号会自动挂载在‘/ mnt / c’或‘/ mnt / d’等下面。

您在WSL外壳中时,只需键入全名(包括.exe扩展名),即可执行Windows 10程序。

如果执行命令时不包括.exe扩展名,WSL会认为它是Linux命令。

比如说,如果您想启动Windows记事本来编辑PHP源文件,应输入以下命令:

notepad.exe test.php

该命令将让您可以使用记事本而不是普通的Linux文本编辑器来编辑Linux文件。

如果您想启动不在PATH中的程序,需要指定完整文件名。

比如说,如果您想使用7Zip来存档文件夹,但是该文件夹不在路径中,您可以使用以下命令:

"/mnt/c/program files/7-zip/7z.exe" a -tzip code.zip code/

请注意,由于“program files”含有空格,因此我们不得不将7z.exe命令括在引号中。

应注意的是,您将无法在WSL中启动需要管理员权限的Windows 10程序。同样,如果Linux文件需要提升的权限,您无法使用Windows程序访问它。

处理Windows命令的输出

除了启动程序与WSL中的文件交互外,您还可以在Linux中处理Windows 10程序的输出。

执行Windows控制台程序后,输出直接在Linux中而不是Windows中加以显示。

然后可以使用awk、sed或sort之类的程序来处理该输出。

举个简单的例子,如果我们想获取按服务名称排序的Windows 10服务列表,可以使用以下命令:

sc.exe query | grep SERVICE_NAME | awk '{print $1=""; print $0}' | sort -bf| sed '/^$/d'

图2. 通过Linux命令管道输出SC.exe

该功能还让您可以将Windows应用程序用作复杂的Linux外壳脚本的一部分。

这些外壳脚本可用于检查进程、监测文件更改、基于Windows 10进程的输出执行命令以及执行许多其他任务。

虽然您可以找到大多数Linux程序的Windows对应版本,但如果使用WSL混合搭配这两种环境,您将获得两全其美的效果。

该功能让您可以使用在任何一种环境中用起来最擅长的工具。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

为了满足日益增长的数据处理需求,铁威马NAS推出了全新的性能巅峰2024年旗舰之作F4-424 Pro,并搭载了最新的操作系统--TOS 6。这款高效办公神器的问世,无疑将为企业和专业人士带来前所未有的便捷与效率。

关键字: 存储 Linux 服务器

双系统将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对双系统的相关情况以及信息有所认识和了解,详细内容如下。

关键字: 双系统 Windows Linux

安装Linux操作系统并不复杂,下面是一个大致的步骤指南,以帮助您完成安装。1. 下载Linux发行版:首先,您需要从Linux发行版官方网站下载最新的ISO镜像文件。

关键字: Linux 操作系统 ISO镜像

计算机是由一堆硬件组成的,为了有限的控制这些硬件资源,于是就有了操作系统的产生,操作系统是软件子系统的一部分,是硬件基础上的第一层软件。

关键字: Linux 操作系统 计算机

Linux操作系统是一套免费使用和自由传播的类Unix操作系统,通常被称为GNU/Linux。它是由林纳斯·托瓦兹在1991年首次发布的,并基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Lin...

关键字: Linux 操作系统

所谓进程间通信就是在不同进程之间传播或交换信息,它是一组编程接口,让程序员能够协调不同的进程,使之能在一个操作系统里同时运行,并相互传递、交换信息;还可以让一个程序能够在同一时间里处理许多用户的需求。

关键字: Linux 进程通信 编程接口

串口通信作为一种最传统的通信方式,在工业自动化、通讯、控制等领域得到广泛使用。

关键字: Linux 串口通信 通讯

2023年11月16日: MikroElektronika(MIKROE) ,作为一家通过提供基于成熟标准的创新式硬软件产品来大幅缩短开发时间的嵌入式解决方案公司,今天宣布推出一款基于单线设备的软硬件开源解决方案Cli...

关键字: 嵌入式 Linux 操作系统

Linux是一种免费使用和自由传播的类Unix操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布。它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CP...

关键字: Linux 操作系统

本文中,小编将对嵌入式予以介绍,如果你想对它的详细情况有所认识,或者想要增进对它的了解程度,不妨请看以下内容哦。

关键字: 嵌入式 Linux
关闭
关闭