diff --git a/_posts/c++/vscode的cpp配置/vscode的cpp环境配置.md b/_posts/c++/vscode的cpp配置/vscode的cpp环境配置.md new file mode 100644 index 0000000..78edbbb --- /dev/null +++ b/_posts/c++/vscode的cpp配置/vscode的cpp环境配置.md @@ -0,0 +1,112 @@ +## 开发环境介绍 + +我工作环境 + + + +## 插件配置 + +### 生成头文件防重复引用宏 + +利用代码片段生成如下的头文件宏定义 + +``` +#ifndef _MY_TEST_FILE_H_ +#define _MY_TEST_FILE_H_ + +// here is you code... + +#endif // _REDIS_FREQ_WRITE_ACTION_H_ +``` + +设置 + +![image-20200510003826796](C:\Users\linlongchen\AppData\Roaming\Typora\typora-user-images\image-20200510003826796.png) + +![image-20200510004021821](C:\Users\linlongchen\AppData\Roaming\Typora\typora-user-images\image-20200510004021821.png) + +格式可自定义。 + +``` +{ + "C C++ Header": { + "scope": "c, cpp", + "prefix": "header", + "description": "Add #ifndef, #define and #endif", + + "body": [ + "#ifndef _${TM_FILENAME_BASE/(.*)/${1:/upcase}/}_H_", + "#define _${TM_FILENAME_BASE/(.*)/${1:/upcase}/}_H_", + "", + "$0", + "", + "#endif // _${TM_FILENAME_BASE/(.*)/${1:/upcase}/}_H_" + ] + } +} +``` + + + +​ + +### 文件和函数注释 + +安装插件 `koroFileHeader`可以自定义文件头部注释和函数注释。 + +![image-20200510001900009](C:\Users\linlongchen\AppData\Roaming\Typora\typora-user-images\image-20200510001900009.png) + +搜索 `filehead` 点击编辑 `settings.json` 打开配置编辑界面。 + +```json +// 文件头部注释 + "fileheader.customMade": { + + "Description": "", + "version": "1.0", + "Author": "lemon", + "Copyright": "(C) BAT", + "Date": "Do not edit", + "History": "Date Author Comment" + }, + + // 函数注释 + "fileheader.cursorMode": { + + + "name": "", + "description":"", + "param": "", + "return": "" + }, + "fileheader.configObj": { + // 自定义语言注释符号,覆盖插件的注释格式 + "language": { + "java": { + "head": "/$$", + "middle": " $ @", + "end": " $/" + }, + // 一次匹配多种文件后缀文件 不用重复设置 + "h/hpp/cpp": { + "head": "/**************************************************", // 注释开头 多个* + "middle": " * @", // 注释中间 * + "end": " ***************************************************/" // 注释结尾 多个* + }, + // 针对有特殊要求的文件如:test.blade.php + "blade.php":{ + "head": "", + } + } + } +``` + + + +### 格式化代码 + +快捷键:Shift+Alt+F + +![image-20200509231323363](C:\Users\linlongchen\AppData\Roaming\Typora\typora-user-images\image-20200509231323363.png) \ No newline at end of file diff --git a/_posts/c++/vscode远程开发/SSH程序.png b/_posts/c++/vscode远程开发/SSH程序.png new file mode 100644 index 0000000..e6a3b1b Binary files /dev/null and b/_posts/c++/vscode远程开发/SSH程序.png differ diff --git a/_posts/c++/vscode远程开发/SSH配置文件.png b/_posts/c++/vscode远程开发/SSH配置文件.png new file mode 100644 index 0000000..45060ab Binary files /dev/null and b/_posts/c++/vscode远程开发/SSH配置文件.png differ diff --git a/_posts/c++/vscode远程开发/teddy-mother-s-day-love-mama-preview.jpg b/_posts/c++/vscode远程开发/teddy-mother-s-day-love-mama-preview.jpg new file mode 100644 index 0000000..6afa18d Binary files /dev/null and b/_posts/c++/vscode远程开发/teddy-mother-s-day-love-mama-preview.jpg differ diff --git a/_posts/c++/vscode远程开发/vscode远程开发.md b/_posts/c++/vscode远程开发/vscode远程开发.md new file mode 100644 index 0000000..fa1481b --- /dev/null +++ b/_posts/c++/vscode远程开发/vscode远程开发.md @@ -0,0 +1,134 @@ +今天和大家分享远程开发工具,分享一下我平常是如何用 VS Code 进行远程开发工作的,以及一步步教你搭建远程开发环境,拥有比德芙还丝滑的远程开发体验。 + +我们厂里为了最大程度提高工程师生产力,各种研发配套工具非常的齐全,对开发人员每人都有一台云主机,而且是个人主机哦,申请就有的那种,有了云开发主机在家里或者在公司都可以随便折腾,加班也更方便了,好像哪里有点不对。 + +![img](https://i01piccdn.sogoucdn.com/a02eed86bce1545e) + + + +## 传统的远程开发 + +大家都知道我是从事后台服务器开发工作的,主力语言是C/C++。我们的服务端程序一般都是跑在 `Linux` 服务器上面,传统的开发流程是在 window 或 Mac 的 IDE 环境编写代码,然后用 `ftp` 或`sync` 同步代码到开发机上编译,程序或服务最终发布到测试或生产环境运行。 + +就我来说,以前是这么干的:在本地 Windows 和 Linux 云开发机之间开启一个同步程序,本地编辑代码,实时后台同步到 Linux 云开发机,然后用 `xshell` 登录开发机编译、调试,这个过程有点不够优雅,现在有更香的解决方案。 + + + +## 更香的远程开发 + +### 介绍下VS Code + +这是一款开源编辑器,却不止是编辑器。 + +> **Visual Studio Code**(简称**VS Code**)是一个由[微软](https://zh.wikipedia.org/wiki/微软)开发,同时支持[Windows](https://zh.wikipedia.org/wiki/Windows) 、 [Linux](https://zh.wikipedia.org/wiki/Linux)和[macOS](https://zh.wikipedia.org/wiki/MacOS)等操作系统且[开放源代码](https://zh.wikipedia.org/wiki/开放源代码)的[代码编辑器](https://zh.wikipedia.org/wiki/文本编辑器)[[4\]](https://zh.wikipedia.org/wiki/Visual_Studio_Code#cite_note-TechCrunch-4),它支持[测试](https://zh.wikipedia.org/wiki/调试),并内置了[Git 版本控制](https://zh.wikipedia.org/wiki/Git)功能,同时也具有开发环境功能,例如代码补全(类似于 [IntelliSense](https://zh.wikipedia.org/w/index.php?title=IntelliSense&action=edit&redlink=1))、代码片段和[代码重构](https://zh.wikipedia.org/wiki/代码重构)等。该编辑器支持用户个性化配置,例如改变主题颜色、键盘快捷方式等各种属性和参数,同时还在编辑器中内置了扩展程序管理的功能。引用维基百科 + +我最喜欢的是它的插件能力,几乎想要啥功能都能找到插件支持,应该不用我安利你们都会喜欢的。 + +在 2019 年的 Stack Overflow 组织的开发者调研中,VS Code被认为是最受开发者欢迎的开发环境,据调查87317名受访者中有 50.7% 的受访者声称正在使用VS Code。 + +![排名](https://pic3.zhimg.com/v2-3adaf59845ac75ec58b09f8a6c54479d_r.jpg) + + + +说了这么多,反正要表达的就是VS Code很厉害就是了。 + +**重点来了,今天的主角功能是下面这个远程开发扩展插件。** + +微软在 PyCon 2019 大会上发布了VS Code Remote ,从 1.35.0 版本正式提供可以在本地编辑远程开发环境的文件的功能,所以首先确保你的VS Code版本是在这个之上的才能体验到。 + +VS Code远程开发的工作原理,大致是这样的: + +![原理](https://user-gold-cdn.xitu.io/2019/6/7/16b2fdd6d6e51433?imageslim) + + + +下面讲讲如何配置,我的Local OS是 Win10 , Remote OS 是 Linux云主机。 + + + +### 远程开发配置 + +#### 配置SSH环境变量 + +远程开发本地 VS Code 用 SSH 协议与远程服务端通信,所以要先配置SSH环境变量,由于Git自带SSH客户端程序 + +![SSH程序](SSH%E7%A8%8B%E5%BA%8F.png) + +如果你还没装Git的话,这里要先安装 Git,所以配置 Git 的 bin目录到环境变量的 PATH 变量下,这样VS Code连接的时候就能找到它了。 + +![环境变量](%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F.png) + +#### 安装远程开发插件 + +要能连上远程主机,首先我们需要下载VS Code远程开发插件,VS Code其实是提供了一个远程开发插件包,包括: + +![远程开发插件](%E8%BF%9C%E7%A8%8B%E5%BC%80%E5%8F%91%E6%8F%92%E4%BB%B6.png) + +- [Remote - SSH](https://link.zhihu.com/?target=https%3A//marketplace.visualstudio.com/items%3FitemName%3Dms-vscode-remote.remote-ssh) - 通过使用 SSH 链接虚拟或者实体Linux主机。 +- [Remote - Containers](https://link.zhihu.com/?target=https%3A//marketplace.visualstudio.com/items%3FitemName%3Dms-vscode-remote.remote-containers) – 连接 Docker 开发容器。 +- [Remote - WSL](https://link.zhihu.com/?target=https%3A//marketplace.visualstudio.com/items%3FitemName%3Dms-vscode-remote.remote-wsl) - 连接 Windows Subsystem for Linux (Linux子系统)。 + +打开软件的扩展界面,搜索 `Remote` 开头的插件,也能看到这三个的不同远程开发插件,**我们这里连接的是云主机,选择安装 Remote - SSH 插件安装即可。** + +#### 配置远程连接 + +1. 首先点侧边栏的「远程资源管理器」之后点击「设置按钮」,进入远程机器配置界面。 + +![机器配置](%E6%9C%BA%E5%99%A8%E9%85%8D%E7%BD%AE.png) + +2. 修改 ssh 配置文件,用于登录远程机器,各项含义在图中有说明。 + +![SSH配置文件](SSH%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6.png) + +3. 点击连接,登录远程服务器,需要输入几次远程服务器的密码(后面会教你怎么免密登录),输入确认即可。第一次连接会做VS Code Server的初始化工作比较慢,耐心等待。 + +![登录远程服务](%E7%99%BB%E5%BD%95%E8%BF%9C%E7%A8%8B%E6%9C%8D%E5%8A%A1.png) + +4. 登录成功,即可像操作本地环境一样,在VS Code客户端操作远程云主机上的文件。注意,**下图中的「打开文件夹」已经是远端机器上的目录结构了。** + +![打开远程目录](%E6%89%93%E5%BC%80%E8%BF%9C%E7%A8%8B%E7%9B%AE%E5%BD%95.png) + +4. 可以给远程VS Code 安装插件,安装的插件是在云服务器的VS Code上,对本机的VS Code没有影响,插件在远端提供功能,比如代码审查、自动补齐等等,而这所有的一切就像在本地操作一样,对文件的更改也是直接操作的云主机上的文件,丝滑连接。 + +![本地插件和远程插件](%E6%9C%AC%E5%9C%B0%E6%8F%92%E4%BB%B6%E5%92%8C%E8%BF%9C%E7%A8%8B%E6%8F%92%E4%BB%B6.png) + +4. 代码编辑与远程终端调试。打开文件编辑的是云服务器的文件,同时可以打开云服务终端,直接在终端操作编译或者查看云服务器信息。 + +![远程编辑和调试](%E8%BF%9C%E7%A8%8B%E7%BC%96%E8%BE%91%E5%92%8C%E8%B0%83%E8%AF%95.png) + +### 配置SSH免密登录 + +按照上面的配置步骤,每次连接到远程服务器,都需要输入服务器登录密码很麻烦,可以配置SSH免密登录,免去每次输入密码的烦恼,具体操作步骤如下: + +- 打开win cmd终端,输入 ssh-keygen -t rsa 生成秘钥对 + +![秘钥列表](%E7%A7%98%E9%92%A5%E5%88%97%E8%A1%A8.png) + +- 打开生成的秘钥保存路径,拷贝 `id_rsa.pub` 内容,添加到到云服务器的 `~/.ssh/authorized_keys` 文件后面。 + +- 尝试再次连接,不用输密码了,enjoy. + + + +## 写在最后 + +这套远程开发环境体验下来,我整体是比较满意的,最大的好处是不用给电脑装太多软件,选择VS Code是因为需要经常在C++/Python/Go三种IDE之间切换比较麻烦,现在即使是电脑配置低点都没关系,因为所有的编辑器插件扩展和代码都在云端,通过 `SSH` 连接操作一个VS Code打遍所有。 + +而且由于远程开发插件的存在,不论我在哪里,只要有电脑都能方便的打开云端开发环境,非常的方便,这么好用的工具大幅提升生产力,所以今天来分享给大家。 + +老规矩。感谢各位的阅读,文章的目的是分享对知识的理解,技术类文章我都会反复求证以求最大程度保证准确性,若文中出现明显纰漏也欢迎指出,我们一起在探讨中学习。 + +今天的技术分享就到这里,我们下期再见。 + +对了,今天是母亲节,别忘了给家里打个电话。 + +![泰迪, 母亲节, 爱, 妈妈, 贺卡, 母亲, 欢迎](https://i0.hippopx.com/photos/282/1011/765/teddy-mother-s-day-love-mama-preview.jpg) + +**原创不易,不想被白票,如果在我这有收获,就动动手指「在看」「转发」是对我持续创作的最大支持。** + + + + + + + diff --git a/_posts/c++/vscode远程开发/打开远程目录.png b/_posts/c++/vscode远程开发/打开远程目录.png new file mode 100644 index 0000000..79acead Binary files /dev/null and b/_posts/c++/vscode远程开发/打开远程目录.png differ diff --git a/_posts/c++/vscode远程开发/本地插件和远程插件.png b/_posts/c++/vscode远程开发/本地插件和远程插件.png new file mode 100644 index 0000000..06243ee Binary files /dev/null and b/_posts/c++/vscode远程开发/本地插件和远程插件.png differ diff --git a/_posts/c++/vscode远程开发/机器配置.png b/_posts/c++/vscode远程开发/机器配置.png new file mode 100644 index 0000000..5bce4d9 Binary files /dev/null and b/_posts/c++/vscode远程开发/机器配置.png differ diff --git a/_posts/c++/vscode远程开发/环境变量.png b/_posts/c++/vscode远程开发/环境变量.png new file mode 100644 index 0000000..3ba0b79 Binary files /dev/null and b/_posts/c++/vscode远程开发/环境变量.png differ diff --git a/_posts/c++/vscode远程开发/登录远程服务.png b/_posts/c++/vscode远程开发/登录远程服务.png new file mode 100644 index 0000000..6f62bc3 Binary files /dev/null and b/_posts/c++/vscode远程开发/登录远程服务.png differ diff --git a/_posts/c++/vscode远程开发/秘钥列表.png b/_posts/c++/vscode远程开发/秘钥列表.png new file mode 100644 index 0000000..04c82e9 Binary files /dev/null and b/_posts/c++/vscode远程开发/秘钥列表.png differ diff --git a/_posts/c++/vscode远程开发/远程开发插件.png b/_posts/c++/vscode远程开发/远程开发插件.png new file mode 100644 index 0000000..a9b9f3f Binary files /dev/null and b/_posts/c++/vscode远程开发/远程开发插件.png differ diff --git a/_posts/c++/vscode远程开发/远程编辑和调试.png b/_posts/c++/vscode远程开发/远程编辑和调试.png new file mode 100644 index 0000000..5eab7e8 Binary files /dev/null and b/_posts/c++/vscode远程开发/远程编辑和调试.png differ diff --git a/_posts/go/tour_go/环境配置/Go插件.png b/_posts/go/tour_go/环境配置/Go插件.png new file mode 100644 index 0000000..04aab2f Binary files /dev/null and b/_posts/go/tour_go/环境配置/Go插件.png differ diff --git a/_posts/go/tour_go/环境配置/Vscode调试.png b/_posts/go/tour_go/环境配置/Vscode调试.png new file mode 100644 index 0000000..fd36e52 Binary files /dev/null and b/_posts/go/tour_go/环境配置/Vscode调试.png differ diff --git a/_posts/go/tour_go/环境配置/golang环境搭建.md b/_posts/go/tour_go/环境配置/golang环境搭建.md new file mode 100644 index 0000000..39ba2fd --- /dev/null +++ b/_posts/go/tour_go/环境配置/golang环境搭建.md @@ -0,0 +1,281 @@ +前面几周陆陆续续写了一些后端技术的文章,包括数据库、微服务、内存管理等等,我比较倾向于成体系的学习,所以数据库和微服务还有后续系列文章补充。 + +最近工作上比较多的 Golang 编程,现在很多互联网公司都在转向 Golang 开发,所以打算写一写有关 Go 语言学习的系列文章,目标是从 Go 基础到进阶输出一系列文章,沉淀下这些知识同时也给大家做参考,力求做到通俗易懂,即使你是 `Golang` 小白也能看懂,如果你是老手也能温故知新。 + +本文将要和你分享 linux 下安装 Golang 环境,并且讲解如何通过配置 VSCode 远程开发调试 Golang 程序。 + +## 下载源码 + +你可以用系统自带的包管理工具比如 `yum` 或 `apt-get` 来安装Golang开发环境。不过,为了通用性,我选择通过源码的方式来安装和讲解,在官网下载源码,下载地址 https://golang.org/dl/ + +![官方下载界面](F:\github\lemonchann.github.io\_posts\go\tour_go\环境配置\官方下载界面.png) + + + +## 手动安装 + +### 解压安装 + +我这里下载下来的源码包 `go1.14.2.linux-amd64.tar.gz` 放到远程 Linux 服务器目录下。执行以下命令安装到 /usr/local 目录。 + +``` +tar -zxvf -C /usr/local/ `go1.14.2.linux-amd64.tar.gz` +``` + + + +### 创建工作空间 + +工作空间是你Go项目的「工作目录」,挑选一个合适目录,执行下面操作: + +```shell +mkdir GoPath +mkdir -p GoPath/src +mkdir -p GoPath/bin +mkdir -p GoPath/pkg +``` + +三个目录含义: + +```css + src: 源码路径(例如:.go、.c、.h、.s 等) + pkg: 编译包时,生成的.a文件存放路径 + bin: 编译生成的可执行文件路径 +``` + + + +### 配置环境变量 + +安装过程中有这么几个环境变量需要配置,先来了解一下: + +GOROOT:Go的安装路径,也就是前面我们解压到的目录 `/usr/local/go`。 + +GOBIN:Go项目的二进制文件存放目录。 + +GOPATH:Go的工作空间。前面有介绍的工作空间目录。 + +在 `/etc/profile` 文件追加以下内容完成设置。 + +```shell +export GOROOT=/usr/local/go +export GOPATH=/yourpath/GoPath # 设置你自己的GoPath路径 +export GOBIN=$GOPATH/bin +export PATH=$PATH:$GOROOT/bin # 加入到PATH环境变量 +export PATH=$PATH:$GOPATH/bin +``` + +```shell +# source /etc/profile #立即生效 +``` + +### 验证安装 + +```shell +# go version #检查版本 +# go version go1.14.2 linux/amd64 # 输出版本号 +``` + +如果看到版本信息就代表安装成功了! + +## 远程开发 + +上面我们在 Linux 环境下安装好了 Golang 开发环境,但我不想每次打开终端登录服务器编写调试程序,怎么才能在本地PC开发调试Golang程序呢? + +看过我上一篇Vscode远程开发的小伙伴应该能想到方法,我们就要用Vscode搭建Golang远程开发环境。具体的远程开发配置可以查看我的另一篇文章。 + +### Golang开发插件 + +首先安装官方推荐的 Go 开发插件,如下,点他安装。 + +![Go插件](F:\github\lemonchann.github.io\_posts\go\tour_go\环境配置\Go插件.png) + +接着还会出现如下的提示,是因为缺少其他 Go 开发相关插件,点 `install all` 全都装上就行。 + +![安装所有插件](F:\github\lemonchann.github.io\_posts\go\tour_go\环境配置\安装所有插件.png) + + + +## Hello World + +编程界有个惯例,什么语言开始学习都是从 Hello World 开始。现在,我们就用 Golang 编写第一个 `HelloWorld` 程序吧。 + +上代码: + +```go +package main // 所有Go程序从main包开始运行 + +import "fmt" // 导入fmt包 + +func main() { + fmt.Print("hello world", " i am ready to go :)\n") + fmt.Println("hello world", "i am ready to go :)") +} +``` +### 格式化 包 + +`fmt` 实现了类似 C++/C 语言的格式IO库功能。 + +`Print` 和 `Println` 都可用于打印输出,但是功能略有不同。可以看到我在`Print` 函数中,对后一个字符串加了空格和换行符,这样两个打印出来的结果是相同的。 + +### Print + +``` +func Print(a ...interface{}) (n int, err error) +``` + +Print采用默认格式将其参数格式化并写入标准输出。如果两个相邻的参数都不是字符串,会在它们的输出之间添加空格。返回写入的字节数和遇到的任何错误。 + +### Println + +``` +func Println(a ...interface{}) (n int, err error) +``` + +Println采用默认格式将其参数格式化并写入标准输出。总是会在相邻参数的输出之间添加空格并在输出结束后添加换行符。返回写入的字节数和遇到的任何错误。 + +## 调试 + +### 终端调试 + +在终端命令行源码所在目录输入`go run` 运行程序。 + +```shell + +# go run HelloWorld.go +//输出 +hello world i am ready to go :) +hello world i am ready to go :) +``` + +也可以先编译`go build` 得到可执行文件后再运行。 + +```shell +# go build HelloWorld.go +# ls +HelloWorld HelloWorld.go +# ./HelloWorld +hello world i am ready to go :) +hello world i am ready to go :) +``` + + + +### Vscode调试 + +按`F5`启动调试,编辑与调试控制台输出如下: + +![Vscode调试](F:\github\lemonchann.github.io\_posts\go\tour_go\环境配置\Vscode调试.png) + + + +## 命令行参数获取 + +命令行参数可以通过`os` 包的 `Args` 函数获取,代码如下: + +```go +package main + +import ( + "fmt" + "os" + "strconv" +) + +func main() { + // 命令行参数获取,os.Args第一个参数是程序自身 + fmt.Println(os.Args) + for idx, args := range os.Args { + fmt.Println("参数"+strconv.Itoa(idx)+":", args) + } +} +``` + +### 终端设置 + + +以下是带参数argv1 argv2 运行golang程序和输出。 +```shell +# go run basic.go argv1 argv2 + +# 输出 +[/tmp/go-build441686724/b001/exe/basic argv1 argv2] +参数0: /tmp/go-build441686724/b001/exe/basic +参数1: argv1 +参数2: argv2 +``` + + + +### VSCode设置 + +launch.json文件的 `args` 属性配置可以设置程序启动调试的参数。 + +![vscode命令行参数设置](F:\github\lemonchann.github.io\_posts\go\tour_go\环境配置\vscode命令行参数设置.png) + +设置之后,按`F5` 启动调试,就会在调试控制台输出配置的参数。 + +![vscode带参数调试输出](F:\github\lemonchann.github.io\_posts\go\tour_go\环境配置\vscode带参数调试输出.png) + + + +## 环境变量获取 + +命令行参数可以通过`os` 包的 `Getenv` 函数获取,代码如下: + +```go +package main + +import ( + "fmt" + "os" +) + +func main() { + // 获取环境变量 + fmt.Println(os.Getenv("type"), os.Getenv("name"), os.Getenv("GOROOT")) +} + +``` + + + +### VSCode设置环境变量 + +`launch.json` 文件的 `args` 属性配置可以设置 VSCode 调试的 Golang 程序环境变量。 + +设置的格式是:name:vaule 形式,注意都是字符串。 + +![vscode环境变量设置](F:\github\lemonchann.github.io\_posts\go\tour_go\环境配置\vscode环境变量设置.png) + + + +### 终端设置环境变量 + +终端的环境变量设置就是可以用 Linux 的 `export` 命令设置,之后就可以用 `os.Getenv` 函数读取。 + +比如我们最初设置 `GOROOT` 环境变量的命令 + +```export GOROOT=/usr/local/go``` + +就可以用 `os.Getenv("GOROOT") ` 读取。比较简单,这里就不多说了。 + +## 总结 + +现在,你有了一个可以远程开发调试 Golang 的环境,赶紧去写个 `hello world` 体验一下吧!今天的分享就到这,下一篇文章讲解基础语法。 + +老规矩,感谢各位的阅读,文章的目的是分享对知识的理解,技术类文章我都会反复求证以求最大程度保证准确性,若文中出现明显纰漏也欢迎指出,我们一起在探讨中学习。今天的技术分享就到这里,我们下期再见。 + +**原创不易,看到这里,如果在我这有一点点收获,就动动手指「转发」和「在看」是对我持续创作的最大支持。** + + + +## Reference + + [设置GOPATH]( https://studygolang.com/articles/17598 ) + +[Visual Studio Code变量参考](https://blog.csdn.net/acktomas/article/details/102851702) + +[Golang 获取系统环境变量](https://studygolang.com/articles/3387) + +[os库获取命令行参数](https://studygolang.com/articles/21438) \ No newline at end of file diff --git a/_posts/go/tour_go/环境配置/vscode命令行参数设置.png b/_posts/go/tour_go/环境配置/vscode命令行参数设置.png new file mode 100644 index 0000000..1066157 Binary files /dev/null and b/_posts/go/tour_go/环境配置/vscode命令行参数设置.png differ diff --git a/_posts/go/tour_go/环境配置/vscode带参数调试输出.png b/_posts/go/tour_go/环境配置/vscode带参数调试输出.png new file mode 100644 index 0000000..9cf1d53 Binary files /dev/null and b/_posts/go/tour_go/环境配置/vscode带参数调试输出.png differ diff --git a/_posts/go/tour_go/环境配置/vscode环境变量设置.png b/_posts/go/tour_go/环境配置/vscode环境变量设置.png new file mode 100644 index 0000000..10662dc Binary files /dev/null and b/_posts/go/tour_go/环境配置/vscode环境变量设置.png differ diff --git a/_posts/go/tour_go/环境配置/安装所有插件.png b/_posts/go/tour_go/环境配置/安装所有插件.png new file mode 100644 index 0000000..a8b6a93 Binary files /dev/null and b/_posts/go/tour_go/环境配置/安装所有插件.png differ diff --git a/_posts/go/tour_go/环境配置/安装目录.png b/_posts/go/tour_go/环境配置/安装目录.png new file mode 100644 index 0000000..b59fa92 Binary files /dev/null and b/_posts/go/tour_go/环境配置/安装目录.png differ diff --git a/_posts/go/tour_go/环境配置/官方下载界面.png b/_posts/go/tour_go/环境配置/官方下载界面.png new file mode 100644 index 0000000..a532dde Binary files /dev/null and b/_posts/go/tour_go/环境配置/官方下载界面.png differ diff --git a/_posts/go/tour_go/环境配置/插件安装.png b/_posts/go/tour_go/环境配置/插件安装.png new file mode 100644 index 0000000..23ab327 Binary files /dev/null and b/_posts/go/tour_go/环境配置/插件安装.png differ diff --git a/_posts/linux/linux工具系列/linux性能分析工具.md b/_posts/linux/linux工具系列/linux性能分析工具.md new file mode 100644 index 0000000..79ac4f9 --- /dev/null +++ b/_posts/linux/linux工具系列/linux性能分析工具.md @@ -0,0 +1,29 @@ +## top + +`top`命令这个大家都非常的熟悉,他也是很多`LInux`发行版自带的系统工具,几乎每一个Linux程序员都会用过这个命令。`top` 可以实时动态地查看系统的整体运行情况,是一个综合了多方信息监测系统性能和运行信息的实用工具。通过top命令所提供的互动式界面,用热键可以管理。 + +vmstat + +iostat + +ifstat + +dstat + +netstat + +perf + +tcpdump + + + + + + + +## Reference + + https://www.open-open.com/lib/view/open1418970861542.html#articleHeader1 + + https://www.open-open.com/news/view/62d559 \ No newline at end of file