【Linux lesson1】Linux开发工具
一、vim
vim是Linux系统中的一种文本编辑器,虽然现在的开发环境中vscode更顺手,但是在一些特殊情况(只有命令行模式)下,vim更方便。
要想完全学明白vim,学习成本过高,所以只要学习一些简单的命令即可。
在vim中,一共有十几种模式,版本不同模式数量也不同,但是标准模式只有三种。
插入模式负责写代码,命令模式和底线命令模式负责输入各种命令。
出了以上的切换模式命令,还有其他的一些常用命令:
命令模式
dd:删除光标所在行
ndd:从光标所在行开始删除n行
yy:将光标所在行复制到缓冲区中
nyy:从光标所在行开始复制n行到缓冲区
p:将缓冲区复制到光标所在行
hjkl:h表示光标向左移动一格,j代表向下,k向上,l向右
u:撤销上一次命令
ctrl+r:取消上一次撤销
底线命令模式
q:不保存退出
w:保存
wq:保存并退出
!+命令:在shell命令行中执行命令
set nu:显示行号
vim的缺点:
相较于vscode,vim缺少了许多功能,例如代码自动补齐,自动缩进等,写起来很不顺手,因此,有许多插件可供选择,在一定程度上可以改善问题。
二、gcc/g++
gcc/g++是用于编译C语言/c++的编译器。
一般情况下,我们只要使用以下命令即可:
gcc 源文件 -o 目标文件
在一些特殊场景中,也可能用到以下选项:
-E:选项进行预处理
-S:选项生成汇编代码
-c:选项生成目标文件
-std=:使用指定的标准
三、makefile
makefile是进行自动化编译的工具,make是一条命令,makefile是文件。
myproc:myproc.c gcc -o myproc myproc.c
上面代码的第一行代表依赖关系,第二行代表依赖方法。依赖方法必须以Tab开头
其中,myproc文件依赖myproc.c,依赖方法为gcc -o myproc myproc.c。
扩展语法:
bin=myproc # 定义变量
cc=g++
src=$(wildcard *.cc) # 或者使⽤ wildcard 函数,获取当前所有.c⽂件名
obj=$(src:.cc=.o) # 将SRC的所有同名.c 替换 成为.o 形成⽬标⽂件列表$(bin):$(obj)$(cc) -o $@ $^ # $@:代表⽬标⽂件名。 $^: 代表依赖⽂件列表
%.o:%.cc # %.c 展开当前⽬录下所有的.c。 %.o: 同时展开同 名.o$(cc) -c $< -std=c++17 # %<: 对展开的依赖.c⽂件,⼀个⼀个的交给gcc。
四、git
git 是分布式版本控制系统,用于跟踪代码变更、协作开发,支持分支、合并等。,用于存放数据。可以使用GitHub,gitee等网站用于保存。以下是使用方法。
1.现在网站中创建仓库,并且拿到仓库链接
2.使用git clone 链接 的方式将仓库克隆到本地
3.使用git add [文件名] ,git commit -m "日志" ,git push 后即可
使用git需要输入用户名和密码,填入成功后,即可在网站仓库中看见提交的文件了
使用git pull可以将网站中仓库的版本拷贝到本地。