20135316王剑桥 linux第二周课实验笔记

Linux中命令格式为:

command [options选项] [arguments参数] //中括号代表是可选的,即有些命令不需要选项也不需要参数

ls或ls .显示是当前目录的内容,这里“.”就是参数,表示当前目录,是缺省的可以省略

cheat命令提供显示Linux命令使用案例,包括该命令所有的选项和简短但尚可理解的功能。

find查找一个文件在系统中的什么位置,locate是神速版本的find(Windows下有个Everything工具和locate类似).

grep 可以对文件全文检索,支持正则表达式,正则表达式是一个重要的元知识。

whereis,which告诉你使用的命令工具装在什么地方。

GCC编译代码的过程如下:20135316王剑桥 linux第二周课实验笔记_第1张图片

我们可以把编译过程分成四步,以编译hello.c生成可执行文件hello为例,如下图:

20135316王剑桥 linux第二周课实验笔记_第2张图片

预处理:gcc –E hello.c –o hello.i;gcc –E调用cpp

编 译:gcc –S hello.i –o hello.s;gcc –S调用ccl

汇 编:gcc –c hello.s –o hello.o;gcc -c 调用as

链 接:gcc hello.o –o hello ;gcc -o 调用ld

 注意使用GCC编译时要加“-g”参数

GDB最基本的命令有:

gdb programm(启动GDB)

b 设断点(要会设4种断点:行断点、函数断点、条件断点、临时断点)

run 开始运行程序

bt 打印函数调用堆栈

p 查看变量值

c 从当前断点继续运行到下一个断点

n 单步运行

s 单步运行

quit 退出GDB

GDB的n(next)命令让GDB执行下一行,然后暂停。 s(step)命令的作用与此类似,只是在函数调用时step命令会进入函数

其他几个我认为应该掌握的调试命令有:

display 跟踪变量值的改变

until 跳出循环

finish 跳出函数

help 帮助

Vim编辑器        emacs编辑器20135316王剑桥 linux第二周课实验笔记_第3张图片20135316王剑桥 linux第二周课实验笔记_第4张图片20135316王剑桥 linux第二周课实验笔记_第5张图片20135316王剑桥 linux第二周课实验笔记_第6张图片20135316王剑桥 linux第二周课实验笔记_第7张图片20135316王剑桥 linux第二周课实验笔记_第8张图片20135316王剑桥 linux第二周课实验笔记_第9张图片20135316王剑桥 linux第二周课实验笔记_第10张图片20135316王剑桥 linux第二周课实验笔记_第11张图片20135316王剑桥 linux第二周课实验笔记_第12张图片20135316王剑桥 linux第二周课实验笔记_第13张图片20135316王剑桥 linux第二周课实验笔记_第14张图片

你可能感兴趣的:(20135316王剑桥 linux第二周课实验笔记)