Linux第二次实验(第三周)


学习目标

  1. 熟悉Linux系统下的开发环境
  2. 熟悉vi的基本操作
  3. 熟悉gcc编译器的基本原理
  4. 熟练使用gcc编译器的常用选项
  5. 熟练使用gdb调试技术
  6. 熟悉makefile基本原理及语法规范
  7. 掌握静态库和动态库的生成

VI的使用

1.VI的模式

(1)命令行模式

(2)插入模式

(3)底行模式

2.VI的基本流程

(1)进入vi,即在命令行下输入"vi hello",进入命令行模式。

(2)在命令行模式下输入i进入插入模式。

(3)在插入模式中,按"Ese",将当前模式转入命令行模式,并在底行行中输入":wq"(存盘退出)进入底行模式

3.vi功能键的学习过程:

h:左移光标

j:下移光标

k:上移光标

l:右移光标

在命令行模式中:

i:切换到插入模式,在目前的光标所在处插入输入的文字,已存在的文字会后退

x:删除光标所在为止的一个字符

a:切换到插入模式,并从目前光标所在为止的下一个位置开始输入文字

vim 文件名: 进入Vim编辑器

dw:从当前光标删除至下一个单词的起始处,不包括它的第一个字符

d$:从当前光标删除至行末

de:从当前光标删除至单词末尾,包括最后一个字符

**对于中文的操作是否也是如此?

0:光标移动至行的开头

$:光标移动至行的结尾

e:光标移动至所在处下一个单词尾部

ne:光标移动至所在处下n个单词尾部

w:光标移动至所在处下一个单词开头

nw:光标移动至所在处下n个单词开头

**若所需移动的单词本行不足以提供时会怎样? 答:下一行的单词将用以拼凑

**用d0,d$来加深理解

dd:删除当前行

ndd:删除光标所在处往下n行(包括自己)

u:撤销最后执行的命令,相当于windows中的ctrl+z

U:撤销对整行的修改

ctrl+r:撤销掉撤销的动作

在正常模式下修改命令的格式:

operator [number] motion

operator - 操作符,代表要做的事情,比如d代表删除

[number] - 可以附加数字,代表动作重复的次数

motion - 动作,代表在所操作的文本上的移动,例如w代表单词(word),$代表行末等等

p:将最后依次删除的内容防止光标之后。(若删除的为行,则需要将光标移至需添加处的上方。若为仅为单词或字母,则可以需要将光标移至需添加出的左方。)

r和一个字符:替换光标所在为止的字符

R:多字符替换

ce:修改文本直到一个单词的末尾(相当于删除+插入的操作)

c [number] motion

c$:修改文本直至行末

**ce与cw的区别?

G:光标移动至文件最后一行

gg:光标移动至文件第一行

nG:光标移动至文件第n行

ctrl+g:显示当前编辑的文件名和文件中光标位置

/和一个字符串:在当前文件中查找该字符串

n:向光标所在处下方查找上一次的字符串

N:向光标所在处上方查找上一次的字符串

?相对于/为逆向查找

ctrl+0:回到之前的位置

ctrl+i:光标移动至较新的位置

%:查找配对的括号

v:进入可视模式

v+方向键:选取所需要进行操作的内容

o:在光标所在的下一行进入插入模式

O:在光标所在的上一行进入插入模式

y:复制

yw:复制一个单词

p:粘贴

[[ : 转到上一个位于第一列的"{"

]] : 转到下一个位于第一列的"{"

{ : 转到上一个空行

} : 转到下一个空行

gd 转到当前光标所指的局部变量的定义


在插入模式中:

完成后输入"Esc"退出编辑


在底行模式中:

输入":wq"存盘退出

输入":q!"放弃所有改动

输入"

Linux第二次学习笔记的更多相关文章

  1. 《Linux内核分析》第二周学习笔记

    <Linux内核分析>第二周学习笔记 操作系统是如何工作的 郭垚 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/ ...

  2. Linux内核分析第二周学习笔记

    linux内核分析第二周学习笔记 标签(空格分隔): 20135328陈都 陈都 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.co ...

  3. Linux防火墙iptables学习笔记(三)iptables命令详解和举例[转载]

     Linux防火墙iptables学习笔记(三)iptables命令详解和举例 2008-10-16 23:45:46 转载 网上看到这个配置讲解得还比较易懂,就转过来了,大家一起看下,希望对您工作能 ...

  4. Docker技术入门与实战 第二版-学习笔记-8-网络功能network-3-容器访问控制和自定义网桥

    1)容器访问控制 容器的访问控制,主要通过 Linux 上的 iptables防火墙来进行管理和实现. iptables是 Linux 上默认的防火墙软件,在大部分发行版中都自带. 容器访问外部网络 ...

  5. Linux进程线程学习笔记:运行新程序

    Linux进程线程学习笔记:运行新程序                                         周银辉 在上一篇中我们说到,当启动一个新进程以后,新进程会复制父进程的大部份上下 ...

  6. Linux进程间通信IPC学习笔记之同步二(SVR4 信号量)

    Linux进程间通信IPC学习笔记之同步二(SVR4 信号量)

  7. Linux进程间通信IPC学习笔记之同步二(Posix 信号量)

    Linux进程间通信IPC学习笔记之同步二(Posix 信号量)

  8. Linux进程间通信IPC学习笔记之消息队列(SVR4)

    Linux进程间通信IPC学习笔记之消息队列(SVR4)

  9. Linux进程间通信IPC学习笔记之有名管道

    基础知识: 有名管道,FIFO先进先出,它是一个单向(半双工)的数据流,不同于管道的是:是最初的Unix IPC形式,可追溯到1973年的Unix第3版.使用其应注意两点: 1)有一个与路径名关联的名 ...

随机推荐

  1. java 的方法注释写在哪里?

    如果有接口,写在接口方法上即可.鼠标滑过方法名时时会显示 如果没有接口,写在每个方法上方. eclipse 分三步 ① 找到方法,并将光标移动至方法名的上方 ②/** ③回车 那,效果是酱紫

  2. JPA一对一关联

    这里我们仍然是使用annotation对实体进行配置.使用person与idcard模拟一对一的关联关系,一个人只能有一个ID号,同样一个ID号只能对应一个人,人与ID号是一对一的关联关系.Perso ...

  3. eclipse 快捷键Alt+/ 不能补充syso

    通过两步来解决 1:Window->Preferences->General->Keys,输入content assist,把Binding改成alt + / 2:在下面,有一个wh ...

  4. JavaScript中判断为整数的多种方式

    之前记录过JavaScript中判断为数字类型的多种方式,这篇看看如何判断为整数类型(Integer). JavaScript中不区分整数和浮点数,所有数字内部都采用64位浮点格式表示,和Java的d ...

  5. Linux学习之六——使用vi和vim

    一.vi的三种模式和相互切换 1. 一般模式 1) 移动光标 可以用箭头键,Page Up, Page Down, Home,End等按键移动光标 G,移动到档案最后一行 1G,gg,移动到档案第一行 ...

  6. [转]响应式表格jQuery插件 – Responsive tables

    本文转自:http://www.shejidaren.com/responsive-tables-for-bootstrap-3.html 这个Responsive tables jQuery插件依赖 ...

  7. solr性能调优

    Schema Design Considerations indexed fields indexed fields 的数量将会影响以下的一些性能: 索引时的时候的内存使用量 索引段的合并时间 优化时 ...

  8. openfire+asmack搭建的安卓即时通讯(四) 15.4.10

    之前的教程不知道你们成功了没,,,没成功可以问我啊=-= 第四篇博文是要实现发送消息的功能. 首先在我们登陆后的活动的layout里添加这样的两个控件,一个EditText和一个Button用于发送数 ...

  9. MIT jos 6.828 Fall 2014 训练记录(lab 1)

    注: 源代码参见我的github:https://github.com/YaoZengzeng/jos Part 1: PC Bootstrap +------------------+ <- ...

  10. LeetCode题解-----First Missing Positive

    Given an unsorted integer array, find the first missing positive integer. For example,Given [1,2,0]  ...