Linux工具准备(基于CentOS的云服务器)

Linux软件包管理器yum

  • 功能:用于Linux下安装软件。
  • yum软件管理器中就存放着软件安装包
    • yum install -y epel-release 执行这个命令后,会安装扩展源(除了标准源的安装包外,还可以下载其他源的软件)
  • 下载软件:sudo yum install 软件名
    • sudo yum -y install (-y 表示下载时出现的所有选项都允许)
  • 卸载软件:sudo yum remove 软件名
Windows和云服务器互传文件(lrzsz)
  • sudo yum install -y lrzsz (lrzsz软件是用于数据传输的)
  • Windows传文件到云服务器:直接将文件拖动到云服务器中即可。
  • 【Linux工具准备(基于CentOS的云服务器)】云服务器传文件到Windows:
    • sz 文件名 (输入命令后会弹出对话框,选择传输到Windows的位置)
  • 注意:这个只能传输文件,不能传输文件夹。
vim配置
  • vim ~/.vimrc (打开vim的配置文件)
  • set nu (显示行号)
  • set autoindent (自动对齐)
  • syntax on (设置语法检测,关键字高亮)
  • 配置vim成 VSc++ 软件的格式:(终端下输入)
    • curl -sLf https://gitee.com/HGtz2222/Vi... -o ./install.sh && bash ./install.sh
Linux编辑器gcc/g++的使用
  • gcc是用于 C 语言的编译,而 g++ 则是用于 C++ 的编译(两者使用方法相似)
  • gcc格式:
    • 格式一:gcc [ 选项一 ] 要编译的文件 [ 选项二 ] [ 目标文件 ] (方框内可省略)
    • 格式二:gcc [ 选项二 ] 目标文件 【要编译的文件】 (要编译的文件可以是多个)
  • 选项一:
    • -E 表示编译器只运行到预处理阶段(头文件展开、去注释、宏替换)
    • -S 表示编译器只进行到编译阶段(生成汇编文件)
    • -c 表示进行汇编阶段(生成二进制文件)
    • 默认不写表示进行整个编译过程(预处理、编译、汇编、链接)生成最终可执行文件。
  • 选项二:
    • -o 表示将编译完的文件放到 [ 目标文件 ]
    • -D OS = 1 (-D表示指定运行系统为 OS)
Linux调试器gdb的使用
  • 命令行中输入:
    • gdb 可执行文件(输入后就会进入调试模式)
    • 输入 quit 即可退出。
  • 注意:gcc/g++默认生成的可执行程序是 release 版本的,不可被调试。
  • 如果想要生成 debug 版本,在编译时在末尾添加 -g(g++ test.cpp -o cpptest -g)
    Linux工具准备(基于CentOS的云服务器)
    文章图片
gdb命令
  • 注意:进行调试时,必须打断点,否则会直接一次运行结束(可以在mian函数开头打断点)
  • list (显示可执行程序的代码)
  • run (运行程序)(直接输入 r 也可以)
  • b 行号 (打断点)
  • info b (表示查看断点信息)
  • d 行号 (删除断点)
  • p 变量 (查看变量的值)
  • next (逐过程调试)(也可以直接输入 n)
  • step (逐语句调试)(也可以直接输入 s)
  • display 变量 (监视变量)
  • undisplay 编号 (取消监视)
  • until 行号 (跳转到任意行)
  • finish (直接运行完程序)
  • continue(编号) (跳转到下一个断点)
Linux项目自动构建工具Makefile
  • gcc/g++编译时只能在当前目录和系统指定的库文件目录中寻找头文件而不能在其他路径中寻找头文件,Makefile能够解决这个问题。
  • make是一个终端命令,Makefile是一个文件。
  • 伪目标表示一定会被执行的依赖方法(在目标文件已经生成过,且依赖文件未被修改时,再次执行make,将不会再执行依赖方法)
    Linux工具准备(基于CentOS的云服务器)
    文章图片
Makefile中的符号
  • $@ 代表依赖关系中的目标文件
  • $^ 代表依赖关系中的依赖文件列表(多个依赖文件)
  • $< 代表依赖关系中一个一个的依赖文件(会将依赖文件列表中的依赖文件一个一个的取出来去执行依赖方法)
    Linux工具准备(基于CentOS的云服务器)
    文章图片
git命令(github代码托管)
  • 安装git:sudo yum install -y git
  • 将托管仓库克隆到云服务器:git clone https://gitee.com/BJFyfwl/Lin...
    • https://gitee.com/BJFyfwl/Lin... 这个是git中新建的库地址
    Linux工具准备(基于CentOS的云服务器)
    文章图片

  • 克隆完成后会出现一个托管仓库的文件夹(这个文件件是本地的托管仓库),该文件夹下有一个 .git 文件(注意不要删除它)
  • 注意:在上传到gitee时,是采用覆盖式上传,即gitee中之前已经上传过一些程序,但是将本地仓库中的代码删除后,再次上传,gitee中已经上传过的代码也会被删除。
    Linux工具准备(基于CentOS的云服务器)
    文章图片
  • 直接使用 cp 复制的方式将代码复制到本地仓库中即可
    Linux工具准备(基于CentOS的云服务器)
    文章图片
  • 将本地仓库代码添加到对应的本地仓库中 git add . (注意有个点)
  • 编写提交日志 git commit -m "我的第一次提交" (日志必须写)
  • 将本地仓库内容提交到远端仓库 git push(会提示输入gitee的用户名和密码)

    推荐阅读