第十章 vi文字处理器

编辑器 vi 1.一般模式 2.编辑模式 3.命令行模式

注意:在vi编辑模式中 Tab键与空格键的不同

向上(k)   向下(j)  向左(h)  向右(l)

ctrl+f = page down

ctrl+b = page up

ctrl+d = 向下半页

ctrl+u = 向上半页

一般模式下操作:

0 移动到该行的最前一个字符

$ 移动到这一行的最后一个字符处

G 移动到该文件的最后一行

gg 移动到这个文件的第一行

n <enter> 光标向下移动N行

/word 向下搜索

?word 向上搜索

n 重复向下搜索

N 重复向上搜索

:n1,n2s/word1/word2/g #在n1到n2行中查找word1并将word1 替换为word2

:1,$s/word1/word2/gc #在第一行到最后一行中查找word1 并替换为word2,其中c为要求用户确认

x 向后删除一个字符  = del

X 向前删除一个字符 = backspace

dd 删除光标所在的行

ndd 向下删除N行

yy 复制一行

nyy 复制n行(向下)

p/P 将复制的数据粘贴光标的下一行 P为粘贴到上行

ctrl + r 重复上一个操作

.  重复前一个动作

编辑模式操作:

i 在当前光标前插入

I在当前行的第一个非空格字符处插入

a/A 在当前光标后插入  A为在光标所在的行的最后一个字符处插入

r/R 替换光标所在的字符 (按 r 后再按要替换的字符) R 一直替换光标所处的文字 直到ESC终止

命令行模式:

ESC 退出编辑模式到一般模式

:W 将编辑数据存盘 :w! 强制存盘 :w filename (另存为)

 :q 离开  :q!强制离开,不存盘

:wq  保存并离开   :wq! 强制保存并离开

:e! 将文件还原到原始状态

:r 读入另一个文件的数据

:!command 暂离开vi 执行command 命令并显示结果

:set nu 设置行号 :set nonu取消行号

产生的*.swp文件为vi的临时文件

alias 设置别名

块选择:

v 将光标经过处反选

ctrl + v 选择长方形区域

d 将选中区域删除

多文件选择:

vi file1 file2  其中命令n 编辑下一个 N编辑上一个 :files 列出所有打开文件

在一个窗口中打开多个文件:

在命令行模式输入:  :sp filename 窗口切换:ctrl+w+j/k

vim动作记录文件:~/.viminfo 记录环境设置参数

:set back #是否自动存储备份文件

:set backspace=(0/2) 0/1 仅可删除输入的文字 2可删除任意文字

:set all 显示所有环境参数

vim 设置存放在 /etc/vimrc文件中

dos与linux的换行符不同,在不同系统之间复制纯文本文件需要使用以下命令来转换:

dos2unix / unix2dos

-k 保留该文件的mtime时间

-n 保留旧文件 输出到新文件

课后习题&答案

1.我要在某个档案的第 34 行向右移动 15 个字符,应该在一般模式下达什么指令?

答:1.  34G    2.    15l

2.在 vi 里面, PageDown 按钮可以使用什么组合键来取代?

答:ctrl+f

3.如何在一行中,移动到行头及行尾?

答:行头:0  行尾:$

4.如何在一行中,移动到行首或行尾?

答:gg 移动到行首  G 移动到行尾

5.vi 里面, r 有什么功能?

答:r有替换光标所在的字符

6.如何将目前的页面另存新档?

答::w! filename

7.在 linux 底下最常使用的文书编辑器为 vi ,请问如何进入编辑模式?

答:i/I a/A 为在本行当中插入

o/O 在新的一行插入

r/R 取代字符

8.如何由编辑模式跳回一般模式?

答:按 ESC

9.若上下左右键无法使用时,请问如何在一般模式移动光标?

答:向上(k)   向下(j)  向左(h)  向右(l)

10.若 [pagedown] [ pageup] 在一般模式无法使用时,如何往前或往后翻一页?

答:ctrl+f = page down

ctrl+b = page up

11.如何到本档案的最后一行、第一行;本行的第一个字符、最后一个字符?

答:最后一行 G  第一行 1G 第一个字符0  最后一个字符$

12.如何删除一行、n行;如何删除一个字符?

答:dd 删除 ndd 删除n行 x/X 删除一个字符

13.如何复制一行、n行并加以贴上?

答:yy复制一行 nyy复制n行 p粘贴/P粘贴

14.如何搜寻 string 这个字符串?

答:/string 向下搜索 ?string 向上搜索

15.如何取代 word1 成为 word2,而若需要使用者确认机制,又该如何?

答::0,$s/word1/word2/g 搜索word1 并用word2 替换,:0,$s/word1/word2/gc 确认机制

16.如何读取一个档案 filename 进来目前这个档案?

答::r filename

17.如何另存新档成为 newfilename?

答::w! filename

18.如何存档、离开、存档后离开、强制存档后离开?

答::w存档 :q 离开 :wq 存档后离开 :wq!强制存档后离开

19.在 vi 底下作了很多的编辑动作之后,却想还原成原来的档案内容,应该怎么进行?

答::e!

20.我在 vi 这个程序当中,不想离开 vi ,但是想执行 ls /home 这个指令,vi 有什么额外的功能可以达到这个目的:

答::! ls /home

21.如何设定与取消行号?

答::set nu 设置  :set nonu 取消

转载于:https://blog.51cto.com/redkey/838075

鸟哥Linux私房菜_基础篇(第二版)_第十章学习笔记相关推荐

  1. 鸟哥Linux私房菜(基础篇)——第五章:首次登入与在线求助 man page笔记

    1.X Winsows与文本模式的切换 ●[Ctrl] + [Alt] + [F1] ~ [F6] :文字接口登入 tty1 ~ tty6 终端机.        ●[Ctrl] + [Alt] + ...

  2. 鸟哥Linux私房菜_基础篇(第二版)_第七章学习笔记

    第七章 Linux文件和目录管理 绝对路径:以"/"开始 相对路径:以非"/"开始 其中,"."代表当前目录,".."代 ...

  3. 鸟哥Linux私房菜

    Linux相关知识: 鸟哥Linux私房菜   真是人间美味啊! 『Linux 基础篇』: 引言: 这部份包括了早期的Red Hat 6.x以及 鸟哥写的一.二版的基础篇各章节文章汇整! 第一部份:L ...

  4. 鸟哥linux私房菜第6章笔记

    鸟哥linux私房菜第6章笔记 文件权限 修改 chgrp [-R] groupname filename //修改文件所属组chown [-R] ownername[:groupname] file ...

  5. 新版鸟哥Linux私房菜资料

    新版鸟哥Linux私房菜 新版鸟哥该教程内容丰富全面,基本概念的讲解非常细致,深入浅出.各种功能和命令的介绍,都配以大量的实例操作和详尽的解析.是初学者学习Linux不可多得的一本入门教程. 如何获取 ...

  6. 精读鸟哥linux私房菜-笔记介绍

    本专栏的设立,是为了详细记载本人阅读<鸟哥linux私房菜>的思考与感悟. 在大二学了一整年的CS:APP之后,本人被linux操作系统的强大功能所吸引,因此希望从一个全新的角度,即跟随国 ...

  7. 鸟哥 Linux 私房菜学习心得(一)

    一.鸟哥的私房菜  http://cn.linux.vbird.org 有些地方空格不是很明显,总之给自己个尝试的机会吧!万一发现什么呢! 二.root@kali:~# 与root@kali:/# 的 ...

  8. 鸟哥Linux私房菜知识点总结3到5章

    感觉自己对Linux的理解一直不够,所以近期翻看了一本<鸟哥的Linux私房菜>.这是一本基础的书,万丈高楼平地起,会的不多但能够学.这是我整理的一些知识点,尽管非常基础.希望和大家共同交 ...

  9. 鸟哥Linux私房菜知识点总结10到11章

    最近翻看了一本<鸟哥的Linux私房菜>.这是一本基础的书,万丈高楼平地起,会的不多但可以学.这是我整理的一些知识点,虽然很基础.希望和大家共同交流. 第10章 vim程序编辑器 按键说明 ...

最新文章

  1. 本地化在ASP.NET 2.0中的实现
  2. (JAVA学习笔记) Scanner类中next方法和nextline方法的区别
  3. 多继承-注意父类之间注意不要有重名方法或属性
  4. 【拨云见日】全面云化时代,如何选择适合自己的“云”?
  5. sql语句基础学习(不涉及多表查询)
  6. 早买早享受 晚买有折扣 !特斯拉大降价致消费者拉横幅抗议
  7. Arch Linux 安装 Virtualbox 4.2.0 备忘录
  8. WinRAR 无广告注册安装
  9. 微型计算机原理第三版期末试题,《微机原理A (闭卷)》期末试题含答案.doc
  10. 工程导论-----创造力
  11. 易基因|脂多糖诱导的仔猪肝脏损伤模型中m6A RNA甲基化介导了NOD1/NF-kB信号激活
  12. 关于Oracle SQL中系统时间和库里数据时间的比较
  13. ECC-Elliptic Curves Cryptography,椭圆曲线密码编码学
  14. Java String、StringBuffer、StringBuilder类解析
  15. IDEA 打开一片空白
  16. SpringBoot-yaml语法规则和读取数据
  17. 西藏拉萨某知名大饭店
  18. 生命不息,折腾不止—小黑升win10
  19. 计算机程序UI设计员SWOT分析,计算机专业学生个人SWOT分析案例.doc
  20. VMware ESXi 6.5 安装NVIDIA K2 GPU 显卡硬件驱动和配置图文

热门文章

  1. 【web前端面试题整理05】做几道前端面试题休息休息吧
  2. redis 之 ae 模型测试
  3. Apache+Tomcat实现负载均衡
  4. Delphi中destroy, free, freeAndNil, release用法和区别
  5. recommend a cool calendar
  6. 【函数计算月报】2018年12月刊
  7. SpringData JDBC
  8. AFNetworking框架下的SSL服务器证书的自定义验证
  9. Apache+php 在windows下的配置
  10. UVa 642 - Word Amalgamation