WSL
系统的描述, 与安装过程的基础, 命令行的基础使用WSL
与VSCode
的本地连接 / ssh
连接WSL
中C/C++
的开发环境vim
基础用法(所以这个有什么好处吗)OpenMP
和EasyX
)WSL
子系统的实现方式, 与完全系统的对比WSL
搞得能用的WSL
搞死了之后(很不幸彻底搞死了), 重装的备忘录WSL
安装 & 初始设置VSCode
的基础情况, 详见不存在的介绍(kk和zz还没有写完)Linux
, 所以有错的地方跪求纠正.md
文件中转过来的, 每次更新会直接覆盖之前的全部内容, 所以麻烦进行明显标注方便保留..md
文件储存位置: nqhq的SurfacePro6@C:\Coding\Linux\WSL\beginners.md
powershell
运行命令Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Ubuntu
LTS
版本(本文基于20.02LTS)D:/
盘里.Installing...(忘记了)...
, 大概等2minsudo apt-get update && sudo apt-get upgrade
update
下载新软件包, upgrade
升级下载的新软件包WSL
需要安装软件, 是通过向指定的库进行调用❓sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo
: 超级管理员权限, cp
: copy, 带/
的东西: 文件地址WSL
真的💥死了(并且心💔也死了)Start Menu
里对图标击右键, 选择应用设置
重置
icon并且点击, 就已经重置了WSL
, 详见下一节WSL
net stop LxssManager
net start LxssManager
wsl -t <DistributionName>
(后面会说到)计算机\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Lxss\
powershell
下 wsl export/import
powershell
里进行wsl --help
查看可用选项wsl -l -v
查看正在运行的分发版(Distribution)Ubuntu
, 也可能很长, e.g.Ubuntu-20.04-20210101
Ubuntu
wsl -t <DistributionName>
注销这个分发版的WSL
wsl --export <DistributionName> <FilePath>
wsl --export Ubuntu C:\Users\louze\Downloads\Ubuntu-20210201.tar
tar
格式, 至于为什么, 不知道wsl --unregister <DistributionName>
wsl --import <DistributionName> <InstallLocation> <FilePath>
root
而不是个人用户, 会影响vscode使用, 需要解决\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Lxss\DefaultUid
id <UserName> -u
查看)WSL
(或者在别人的电脑上安装自己的)<尖括号>
为必选项目的项目, (圆括号)
标记可选项目<命令> <附加> <对象地址>
rm -rf /
(对不起这是个错误示范, 千万不要使)cd /
和cd ~
(sudo) <应用> <对象地址>
sudo apt-get install sshd
(然而这个还没搞定)sudo apt-get install <deb name>
su <username>
换个用户登录apt install
和apt-get install
的区别?deb
软件包的实现?VSCode
和WSL
结合, 可以实现极佳的C
/C++
调试体验GNU
的gcc
g++
gdb
进行VSCode
中插件Remote - WSL
进行连接.VSCode
基础操作, 见网页VSCode
WSL
命令行, 对应的所在目录里输入code .
, 自动切换到VSCode
里VSCode
打开bash
: 快捷键(ALT加`)(后者在键盘左上角)bash
中使用sudo apt-get install
加上要安装的东西sudo apt-get install gcc
build-essential
gcc
g++
gdb
cmake
libboost-all-dev
是干什么的?gcc -v
, g++ -v
, gdb -v
cmake --Version
VSCode
中的插件gdb
的使用whereis g++
命令查看g++在的位置, 推荐使用/usr/bin/g++
路径N95T4
和2.31
ssh
连接, 搭配VSCode
插件openssh-server
(据说可能有一定问题)sudo apt-get remove openssh-server
sudo apt-get install openssh-server
\etc\ssh\sshd_config
sshd_config
! 有d
vim
编辑nano
编辑sudo nano \etc\ssh\sshd_config
#
开头为被注释掉Port 2222
PermitRootLogin yes
PasswordAuthentication yes
22
: 因为Windows
中22
有其他用处, 需要避开Ctrl
+O
(是字母O), 然后Enter
保存Ctrl
+X
退出nano
编辑器sudo service ssh --full-restart
WSL
的ip
net-tools
工具: sudo apt-get install net-tools
ifconfig
inet
后为ipv4
VSCode
连接Remote Development
, 它附加四个插件(一次性装五个插件)Remote - SSH
(要用的), Remote - WSL
(本机连接WSL
要用的), Remote - Containers
(Docker
要用的)Remote - SSH
会附加Remote - SSH: Editing Configuration Files
Remote - SSH
配置文件Host myWSL // 实例名, 随便取, 简单最好 Hostname 10.10.10.10 // 刚刚的inet ipv4 Port 2222 // 刚刚配置的端口 User cupt // 想连接的用户的名称(一开始设置的), 也可以是root IdentityFile <DirName> // 密钥路径, 没有也行, 没搞懂怎么用
VSCode
连接Windows powershell
里ssh <username>@<ipv4>
ssh cupt@10.10.10.10
2222
?vi
的升级版vimtutor
进入快速学习的文档, 建议打开拷贝的版本i
和Esc
进行切换hjkl
左下上右i
和Esc
:q!
退出而不保存:wq
退出并保存x
键删除下面的字符dw
, d$
(叙述见后)A
, 在一行的末尾输入A
!!!u
撤销, U
撤销一整行Ctrl-R
: 重做一次w
e
#
$
w
移动到下一个(词的开头)e
移动到下一个(词的结尾)#
移动到本行开始(??这条存疑)$
移动到本行结尾d
开头的命令d
=delete
, 操作为d
+另一个符号
dw
删除, 到下一个词, 不留空格de
删除, 这个词删完, 留下空格d$
删除(从此处)本行直到结尾dd
删除本行x
键删除下面的字符p
将刚刚删除储存的内容输出r
replacer<x>
用x
替代光标下的字母c
changece
修改这个词c<n>e
用上countINSERT
模式2w
向后移动过两个字2dd
删除两行d2w
是什么意思reptyr
markdown
转wikidoku
: $ pandoc -f gfm -t dokuwiki <filename.md> -o <filename.txt>