20145209 《信息安全系统设计基础》第8周学习总结

20145209 《信息安全系统设计基础》第8周学习总结

教材学习内容总结

Linux命令

tab 补全命令、补全目录、补全命令参数

Ctrl+c 终止当前运行的程序,但不结束终端

Ctrl+d 结束输入或退出终端

Ctrl+s 暂停当前程序,任意键恢复

Ctrl+z 将当前程序放入后台(命令fg恢复前台)

Ctrl+a 将光标移至输入行头(相当于Home)

Ctrl+e 将光标移至输入行末(相当于End)

Ctrl+k 删除光标所在位置到行末的所有字符

Alt+Backspace向前删除一个单词

Shift+PgUp 将终端显示向上移动

Shift+PgDn 将终端显示向上移动

方向键“上” 历史输入的指令

sudo adduser abc 创建一个叫abc的用户

su -l abc 切换到用户abc

groups abc 显示用户abc所在的用户组

sudo deluser abc --remove-home 删除用户abc

pwd 获取当前路径

touch 创建空白文件

mkdir 创建空白目录

mkdir -p 创建多级目录

cp abc A/B/C 复制abc文件到A/B/C目录下 cp -r 复制目录

rm 删除文件

mv abc A/B/C 移动文件abc(剪切)到A/B/C文件夹

mv abc def 将文件abc重命名为def

cat 显示文件 cat -n 在显示文件的时候显示行号

more abc 阅读文件abc

file 显示文件类型

declare abc 创建一个叫abc的变量

echo $abc 读取变量abc

环境变量 PATH

vim abc.创建一个c程序

gcc -o abc abc.c 生成可执行文件

预处理:gcc –E hello.c –o hello.i ;gcc –E调用cpp 产生预处理过的C原始程序

编译: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 产生可执行文件

运行: ./hello

./abc.c 执行程序

PATH=$PATH+绝对路径 添加自定义路径到环境变量

zip 压缩 全部内容(-r) 安静模式(-q) 表示输出文件(-o+输出文件名)加密(-e)

du 查看打包文件的大小

unzip 解压 仅查看内容(-l)

更常用的打包工具tar

习题总结

man 判断:Linux Bash中, 可以使用man printf查看C语言中printf函数的帮助文档。(x)

man 判断:Linux Bash中, man printf和man 1 printf 功能等价。(√)

man -k 填空: 数据结构中有二分查找算法,C标准库中有这个功能的函数,这个函数是 bsearch

在vim中,查看printf man pages(帮助文档)的命令是?【3K】

在vim中,查看scanf man pages(帮助文档)的命令是?【K】

man -k 填空:Linux中查找配置 configure 网卡 interface 的命令是 man –k configure | grep interface

cheat 填空:Linux Bash中, cheat find 命令可以查年find命令的使用示例。

填空:Linux Bash中,使用grep查找当前目录下.c中main函数在那个文件中的命令是 grep main .c

填空:查找宏 STDOUT_FILENO 的值的命令是 grep -nr STDOUT_FILENO /usr/include

填空:GCC编译程序的过程分为 预处理、编译、汇编、链接 四个阶段。

判断:gcc –c hello.c 产生的hello.o是可重定位目标文件。(√)

填空:GCC中INFINITY表示 无穷大 。

填空:gcc -f PIC xxx.c 中的PIC的意思是 位置无关的代码 or Position-Independent Code

填空:在64位机器上,要用gcc编译出32位机器码,需要使用 -m32 选项

填空:gdb中使用命令 break main 或 b main 设置main函数断点。

填空:gdb中使用命令 until 可以跳出循环语句。

判断: gdb中next和step都可以单步跟踪,根据自顶向下原则应该优先选用next.(√)

填空:GDB中以16进制形式打印%eax中内容的命令是 print /x $eax

其他(感悟、思考等,可选)

这是一篇期中的总结,这8周的课程让我收获很多,老师的加分扣分方式让我在学习的主动性上有了很大改观,让我将大部分时间用在学习上面而不是像以前一样对学习得过且过的态度。通过这一段的学习,我也发现了自己很多在学习中的不足之处,比如总是喜欢拖延,本来一周的学习任务,我可能要等到最后几天才去做。还有就是还有许多自己不理解的地方,总是很没有耐心,可能有十道不理解解决了四五道就学不进去了。这些问题还需要改正,还有半学期,希望自己努力的同时老师也严格监督我。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 200/200 2/2 20/20
第二周 300/500 2/4 18/38
第三周 500/1000 3/7 22/60
第四周 300/1300 2/9 30/90

参考资料

原文地址:https://www.cnblogs.com/liuyiyang/p/6036323.html