Windows10上使用Linux子系统(WSL)

2019-07-23 14:49:40

Linux的Windows子系统让开发人员可以直接在Windows上运行Linux环境(包括大多数命令行工具,实用程序和应用程序),而无需建立在虚拟机的开销之上,整个系统共200多M,但包含了你能用到的所有功能,并且和windows完美互操作(省去linux挂载本地windows分区或目录的操作),目前Linux的windows子系统已经相当完善,可当作完整linux系统使用

您可以:

  1. 从Windows应用商店中选择您最喜爱的Linux发行版

  2. 运行常用的命令行实用程序,如grepsedawk等。

  3. 运行Bash shell脚本和Linux命令行应用程序,包括:

    • 工具:vim,emacs,tmux

    • 语言:Javascript / node.js,Ruby,Python,C / C ++,C#和F#,Rust,Go等

    • 服务:sshd,MySQL,Apache,lighttpd

  4. 使用发行版的内置包管理器(apt-get安装其他Linux工具

  5. 从Linux控制台调用Windows应用程序。

  6. 在Windows上调用Linux应用程序。

安装Linux的Windows子系统

 在小娜窗口搜索“功能”

 

或者直接PowerShell中运行以下命令

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

出现提示重新启动计算机

安装Linux

在应用商店搜索“Linux”,选择您喜欢的Linux版本,推荐安装Ubuntu

注意:应用商店的程序使用默认路径,不要更换到其他盘符

安装完毕后出现

现在可以在里面进行任何和linux相关的命令

mnt文件夹就进入了windows系统的文件系统

用linux命令对windows文件进行操作

cmd.exe或者power shell中执行linux命令

在power shell中执行bash.exe,进入linux环境下

 

以上路径显示:在windows中的c文件夹下(C盘符)

 

 windows与linux交互演示

 

切记:小心执行mkdir -rf mnt


  • 2021-04-15 10:32:18

    怎么给 headless chrome添加cookies

    In puppeter you have access to the session cookies through page.cookies(). So once you log in, you could get every cookie and save it in a json file:

  • 2021-04-15 10:51:21

    如何通过Devtools协议拦截和修改Chrome响应数据

    在日常研究中,我们经常碰到大量JavaScript代码,我们首先要深入分析才能了解这些代码的功能及具体逻辑。这些代码代码可能会被恶意注入到页面中,可能是客户送过来需要我们帮忙分析的脚本,也可能是我们的安全团队在网页上找到的引用了我们服务的某些资源。这些脚本通常代码量不大、经过混淆处理,并且我们总是需要经过多层修改才能继续深入分析。

  • 2021-04-19 10:54:39

    block和delegate的区别

    代理 可读性高 大部分可以属性 block 写的代码少 一般作为参数 通知 占用资源

  • 2021-04-19 11:00:23

    浅谈block和delegate的使用

    委托是协议的一种,顾名思义,就是委托他人帮自己去做事。委托是给一个对象提供机会对另一个对象中的变化做出反应或者影响另一个对象的行为。其基本思想是:两个对象协同解决问题,并且打算在广泛的情形中重用。委托指向另一个对象(即它的委托)的引用,并在关键时刻给委托发消息。消息可能只是通知委托发生了某件事情,给委托提供机会执行额外的处理,或者消息可能要求委托提供一些关键的信息以控制所发生的事情。委托的作用主要有两个,一个是传值,一个是传事件。

  • 2021-04-19 11:36:44

    iOS 组件实现方案

    什么才是好架构,为什么要组件,组件设计的优点

  • 2021-04-25 09:53:18

    android debug速度特别慢有时候卡住

    一直提示定在 Starting LLDB server。可能的原因是 Android Studio编译速度太慢了,就会一直卡在Starting LLDB server。可以通过设置 Run/Debug Configurations ——> Debugger ——> Debug type 为 Java 跳过 C/C++的调试,起码实现对 Java 程序的调试

  • 2021-04-25 09:54:19

    sequelize 时区配置

    sequelize 默认情况下, 保存日期时会转换成 +00:00时区,