携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第1天,点击查看活动详情
vim的模式
命名模式:可以移动光标,进行复制,粘贴之类的命令操作 插入模式:可以进行编写 底行模式:在底行中进行相应的操作
vim的使用
刚进入vim的时候是命令模式。你会发现按什么键都没有用(可能按到了关键的键可能就可以编辑了)
那么按什么键可以进行进行编辑(插入模式)呢?
i:从光标当前位置插入
a:从光标后一个字符位置插入
o:从光标下一行插入
进入插入模式之后就可以进行编写了。编写完成后,按Esc键(在键盘的左上角)进入命令模式。
如果想退出,按Shift加:进入底行模式,然后按wq进行保存退出。
下面是底行模式的一些操作:
q:退出,加上!为强制退出
w:写入,加上!为强制写入
!命令:不退出vim执行相关操作
set nu/nonu:显示/取消行号
vs 文件名:分屏操作
下面讲述在命令模式下的一些操作
yy:复制,nyy从当前行到n行复制。
dd:剪贴,ndd从当前行到n行剪贴。
p:粘贴,np粘贴多少次。
u:撤销。
Shift g:光标定位到文件结尾。
gg:文件最开始的地方。
n Shift g:文件的第n行的开始。
$:当前行的末尾。
^:当前行的开始。
b,w:以单词的形式,前后移动。
h,j,k,l:左,下,上,右 移动光标。
~:大小写切换。
Shift r:替换模式,直接覆盖原来的。
x:删除光标位置的字符
X(Shift x):删除光标前一个位置的字符
yum
软件包管理器。
查看软件:yum list 软件名,也可以这样yum list |grep 软件名
安装软件:yum install 软件名,需要是root权限。
卸载软件:yum remove 软件名,需要是root权限。
gcc/g++
预处理:gcc -E 源代码 -o 目标文件.i
编译:gcc -S 源代码 -o 目标文件.s
汇编:gcc -c 源代码 -o 目标文件.o
链接:gcc 源文件 -o 目标文件,默认为动态链接,可以手动让他动态静态链接-static
g++的使用和gcc一样。
gdb
调试
对于一个可执行程序要有调试信息,在用gcc/g++时可以加上-g生成调试信息,下面让我们开始进行调试的一点简单的方法。
gdb会记下上一次的命令。
gdb 可执行性程序:进入调试。
q:退出调试。
l 行号:从行号处开始列,每次列10行。
b 行号:设置断点。
info b:查看断点。
d 断点编号:取消断点
r:运行,遇到断点停止。
c:运行到下一个断点处停下来。
n:逐过程
s:逐语句。
p 变量名:打印变量的信息
bt:调用堆栈。
finish:把当前函数运行结束停下来。
display 变量:长显示(一直显示)
undisplay 序号:取消长显示
until 行号:跳转到指定行
disable/enable 断点序号:使断点失效/生效
make/makefile
makefile自动化的进行程序的编译链接,make会在当前文件中查找makefile或者Makefile。
makefile的写法:
目标:依赖项
目标和依赖项的依赖关系
执行make,默认只执行makefile里面的第一个依赖关系。下面的目标都可以用make 目标的方法执行。
.PHONY,.PHONY形成的是伪目标,总是可以执行的。
-
没有加的
-
加入
.PHONY
git
版本控制的一种工具
下面操作无脑操作就可以:
git clone 仓库的地址
git add 文件
git commit -m "上传说明"
git push
因为我已经克隆好了,所以就演示下面几个操作