lrzsz -windows和linux通过xshell传输文件
软件包管理工具yum-安装其他软件的工具
基本的程序开发工具
编辑器-vim-写代码
编译器-gcc/g++-将高级语言解释为机器指令集
调试器-gdb-调试程序运行过程
项目的管理工具
项目自动化构建工具-make/Makefile-自动化的将某个项目构架成功
项目版本管理工具-git-可以实现项目的回滚,合并等管理操作
软件包管理工具-yum
ping www.baidu.com-查看网络是否通畅
su root -安装卸载软件包root权限
三板斧操作
yum list-查看所有能够安装的软件包
yum makecache-将软件包信息保存到本地
yum search package_name-搜索软件包
yum install package_name-安装软件包
yum remove package_name-移除软件包
-v/--version -查看版本信息-查看软件包是否已经安装
编译器-vim
-vim工作模式-12种-常用的有三种
普通模式-vim打开文件默认所处模式
插入模式-插入数据
底行模式-保存退出
vim filename-打开一个已有的文件-若不存在则会创建
模式切换-所有模式都是围绕普通模式进行的
普通模式->插入模式:iaoIAO
i-光标处插入
a-光标后插入
o-下一行插入
l-行首插入
A-行尾插入
O-上一行插入
普通模式->底行模式-英文冒号
其他模式->普通模式-ESC
底行模式下的操作
:q-退出
:w-保存
:wq-保存并退出
:x-保存并退出-只有文件内容修改才保存(刷新时间属性)-否则直接退出(不刷新时间属性)
:q!强制退出-不保存
普通模式下的操作
-1.光标移动操作
hjkl-左下上右
w按单词向后移动
b-按单词向前移动
ctrl+f-向下翻页
ctrl+b-向上翻页
gg-回到文档首行
G-回到文档尾行
-2.文件内容操作
yy-复制
nyy-复制-n-向下n行都会复制
p-粘贴
P-粘贴在上一行
dd-剪切(删除)
ndd-剪切(删除)
x-删除字符
dw-删除单词
-3.其他操作
u-撤销上一步操作
ctrl+r-反向撤销
gg=G-全文对齐
编译器gcc/g++
编译型语言C/C++ -程序编译之后才可执行
脚本型语言python -编写完毕直接执行
编译过程
预处理gcc -E
编译gcc -S
汇编gcc -c
-o -指定生成文件名称
链接方式-gcc默认链接方式-动态链接
动态链接-.exe中写入了库文件的函数符号表
链接动态库-生成的.exe小,运行时需加载动态库,多个程序可以在内存使用同一个库,不会在内存中造成代码冗余
静态链接-.exe中直接将使用的库函数指令写入程序中
链接静态库-生成的.exe大,运行时不需要加载,如果多个程序使用了相同的静态库,在内存中会造成代码冗余
调试器gdb-调试程序运行过程,查看程序出问题的位置
调试前提:编译程序时,gcc -g生成debug版本,程序中包含调试符号信息,才能调试
调试指令:
开始调试
start-逐步调试
run-直接运行
next-遇到函数直接运行
step-遇到函数进入函数
until-直接运行到指定文件指定行
until file:line
list-查看指定文件指定行代码
list file:line
断点
break-添加断点到指定文件指定行
break file:line
continue-继续运行
info break-查看断点
delete-删除断点
print-查看/设置变量内容
backtrace-查看函数调用栈
项目自动化构建工具-make/Makefile
Makefile-记录项目构建规则流程的普通文本文件
make-Makefile解释器-在命令行下执行make的时候,对Makefile中记录的规则进行解释执行
目标对象:依赖对象
\t命令
预定义变量
$^
$<
$@-目标对象
声明伪对象-使用一个目标对象无论如何每次都需要重新生成
.PHONY:
项目版本管理工具-git
git clone-克隆远程仓库到本地
git add --all
git commoit -m
git push-提交版本到远程仓库