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-01-21 13:55:53

    Mongodb字段更新$unset操作符

    当使用$操作符匹配任何数组元素,$unset替换指定的元素为null而不是删除掉指定的元素,此行为保持数组大小和位置一直;

  • 2021-01-22 08:30:02

    Android IO简化之Okio库

    如果之前有使用过Okhttp,那么你一定知道底层的IO读取是由square公司开发的Okio库。它补充了Java.io和java.nio的不足,以便能够更加方便,快速的访问、存储和处理你的数据。而在一般的开发中,我们也可以使用Okio来做IO读写,非常方便深得我心

  • 2021-01-22 21:56:48

    emcc生成wasm,wast,bc文件的方法

    Emscripten实现把C/C++文件转成wasm,wast(wasm的可读形式),llvm字节码(bc格式),ll格式(llvm字节码的可读形式)的步骤。

  • 2021-01-22 21:59:34

    emcc编译与部分重要参数选取

    C/C++代码通过emcc编译为字节码,然后根据不同的目标编译为asm.js或wasm。emcc和gcc编译选项类似,例如-s OPTIONS=VALUE、-O等。另外为了适应Web环境,emcc增加了一些特有的选项,如–pre-js 、–post-js 等。

  • 2021-01-22 22:01:19

    Emscripten Compiler Frontend (emcc)

    The Emscripten Compiler Frontend (emcc) is used to call the Emscripten compiler from the command line. It is effectively a drop-in replacement for a standard compiler like gcc or clang.

  • 2021-01-22 22:21:41

    emcc编译命令介绍

    这个输入文件file,既可以是clang可以编译的C/C++语言,也可以是二进制形式的llvm bitcode或者人类可读形式的llvm assembly文件。

  • 2021-01-22 22:25:51

    How to protect your JS code by WebAssembly

    对于iOS或是Android来说,我们可以将相关的算法通过C/C++进行编写,然后编译为dylib或是so并进行混淆以此来增加破解的复杂度,但是对于前端来说,并没有类似的技术可以使用。当然,自从asm.js及WebAssembly的全面推进后,我们可以使用其进一步增强我们核心代码的安全性,但由于asm.js以及WebAssembly标准的开放,其安全强度也并非想象中的那么美好。