2018-2019-1 20165237 《信息安全系统设计基础》第一周学习总结

本文详细介绍了Vim编辑器的基本操作,包括游标移动、文本编辑、文档保存、退出方式、文本删除、替换与撤销等核心功能,以及快速缩进、文本位置调整和查找技巧,适合初学者快速掌握Vim的使用。

2018-2019-1 20165237 《信息安全系统设计基础》第一周学习总结

知识要点

基本操作

  • 游标移动(在普通模式下,按Esc进入普通模式)
按键说明
h
l
j
k
w移动到下一个单词
b移动到上一个单词
  • 进入插入模式(在普通模式下进入)
命令说明
i在当前光标处进行编辑
I在行首插入
A在行末插入
a在光标后插入编辑
o在当前行后插入一个新行
O在当前行前插入一个新行
cw替换从光标所在位置后到一个单词结尾的字符
  • 命令行模式下保存文档从普通模式输入:进入命令行模式,输入w回车,保存文档。输入:w 文件名可以将文档另存为其他文件名或存到其它路径下。
  • 退出vim(常用)
    • 命令行模式下退出vim:从普通模式输入:进入命令行模式,输入wq回车,保存并退出编辑。
    • 普通模式下退出vim:普通模式下输入Shift+zz即可保存退出vim。
  • 普通模式下删除文本
命令说明
x删除游标所在的字符
x删除游标所在前一个字符
Delete同x
dd删除整行
dw删除一个单词(不适用中文)
d$或D删除至行尾
d^删除至行首
dG删除到文档结尾处
d1G删至文档首部
ndd删除n行
  • 替换和撤销(Undo)命令(只针对普通模式
命令说明
r+将游标所在字母替换为指定字母
R连续替换,直到按下Esc
cc替换整行,即删除游标所在行,并进入插入模式
cw替换一个单词,即删除一个单词,并进入插入模式
C替换游标以后至行末
~反转游标所在字母大小写
u{n}撤销一次或n次操作
U撤销当前行的所有修改
Ctrl+rredo,即撤销undo的操作
  • 快速缩进(普通模式
    • 使用命令进行快速调整缩进操作:通模式下输入15G,跳转到15行;普通模式下输入>>整行将向右缩进(使用,用于格式化代码超爽);普通模式下输入<<整行向左回退;普通模式下输入:进入命令行模式下对shiftwidth值进行设置可以控制缩进和回退的字符数。
    • shiftwidth命令:shiftwidth命令是指>>命令产生的缩进(可以简写成sw) 普通模式下输入:进入命令行模式;对shiftwidth值进行设置可以控制缩进和回退的字符数。 获取目前的设定值:set shiftwidth?;设置缩进为10个字符:set shiftwidth=10
  • 调整文本位置
    • 命令行模式下输入:ce(center)命令使本行内容居中
    • 命令行模式下输入:ri(right)命令使本行文本靠右
    • 命令行模式下输入:le(left)命令使本行内容靠左
  • 查找:
    • 普通模式下输入/向下查找,输入向上查找,n表示继续查找,N反向查找
    • 普通模式下输入\*寻找游标所在处的单词
    • 普通模式下输入\#同上,但\*是向前(上)找,#则是向后(下)找
    • 普通模式下输入g\*\*,但部分符合该单词即可
    • 普通模式下输入g\#\#,但部分符合该单词即可

No.1

要求:
  • 每个.c一个文件,每个.h一个文件,文件名中最好有自己的学号
  • 用Vi输入图中代码,并用gcc编译通过
  • 在Vi中使用K查找printf的帮助文档
  • 提交vi编辑过程截图,要全屏,包含自己的学号信息
截图

1298409-20180923211909914-1857698196.png

1298409-20180923211916007-2072057974.png


No.2

要求:
  • 用gcc 进行预处理,编译,汇编,链接vi输入的代码
  • 生成的可执行文件中要有自己的学号
  • 提交预处理,编译,汇编,链接,运行过程截图,要全屏,包含自己的学号信息

    截图

1298409-20180923212040933-1780145812.png

1298409-20180923212046117-1020154885.png
1298409-20180923212302495-1198766869.png


No.3

要求:
  • 用gcc -g编译vi输入的代码
  • 在main函数中设置一个行断点
  • 在main函数增加一个空循环,循环次数为自己学号后4位,设置一个约为学号一半的条件断点
  • 提交调试过程截图(一定包含条件断点的),要全屏,包含自己的学号信息

    截图

1298409-20180923212308426-1114683245.png


No.4

要求:
  • 除了main.c外,其他4个模块(add.c sub.c mul.c div.c)的源代码不想给别人,如何制作一个mymath.a静态库?main.c如何使用mymath.a?
  • 提交静态库生成和调用过程截图(一定包含条件断点的),要全屏,包含自己的学号信息

    截图

    1298409-20180923212315140-958921991.png

No.5

要求:
  • 除了main.c外,其他4个模块(add.c sub.c mul.c div.c)的源代码不想给别人,如何制作一个mymath.so共享库?main.c如何使用mymath.so?
  • 提交共享库生成和调用过程截图(一定包含条件断点的),要全屏,包含自己的学号信息
截图

1298409-20180923212442177-1995787635.png

No.6

要求:
  • 写出编译上面vi编辑代码的makefile,编译出来的目标文件为testmymath, 只用显式规则就可以.

  • 提交Make过程截图,要全屏,包含自己的学号信息

截图

1298409-20180923212528096-836724448.png


码云链接

学习进度条

代码行数(新增/累积)博客量(新增/累积)学习时间(新增/累积)重要成长
目标5000行20篇400小时
第一周61/611/110/10了解vim,gcc,gdb基本操作

参考资料

转载于:https://www.cnblogs.com/Miss-moon/p/9693832.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值