`
su1216
  • 浏览: 670925 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
Group-logo
深入入门正则表达式(jav...
浏览量:71915
E60283d7-4822-3dfb-9de4-f2377e30189c
android手机的安全问...
浏览量:128760
社区版块
存档分类
最新评论

《Unix & Linux 大学教程》 - 第二十二章(三) 学习笔记

阅读更多

学习笔记,内容基础,适合初学者。

 

阅读之前,请务必花30秒查看前言说明(在第一、二章前面部分)

《Unix & Linux 大学教程》 - 第一、二章 学习笔记    Unix简介 & 什么是Linux?什么是Unix

《Unix & Linux 大学教程》 - 第三、四章 学习笔记    Unix连接 & 开始使用Unix

《Unix & Linux 大学教程》 - 第五、六章 学习笔记    GUI:图形用户界面 & Unix工作环境

《Unix & Linux 大学教程》 - 第七、八章 学习笔记    Unix键盘使用 & 能够立即使用的程序

《Unix & Linux 大学教程》 - 第九、十章 学习笔记    文档资料:Unix手册与Info & 命令语法

《Unix & Linux 大学教程》 - 第十一、十二章 学习笔记    shell & 使用shell:变量和选项

《Unix & Linux 大学教程》 - 第十三章 学习笔记    使用shell:命令和定制

《Unix & Linux 大学教程》 - 第十四、十五章 学习笔记     使用shell:初始化文件

《Unix & Linux 大学教程》 - 第十八章 学习笔记    过滤器:统计和格式化
《Unix & Linux 大学教程》 - 第十九章(一) 学习笔记    过滤器:选取、排序、组合及变换
《Unix & Linux 大学教程》 - 第十九章(二)、第二十章 学习笔记  过滤器:选取、排序、组合及变换 正则表达式

《Unix & Linux 大学教程》 - 第二十一章 学习笔记  显示文件

《Unix & Linux 大学教程》 - 第二十二章(一) 学习笔记  vi文本编辑器(一)

《Unix & Linux 大学教程》 - 第二十二章(二) 学习笔记  vi文本编辑器 (二)

《Unix & Linux 大学教程》 - 第二十二章(三) 学习笔记  vi文本编辑器 (三)

《Unix & Linux 大学教程》 - 第二十四章 学习笔记  目录操作

《Unix & Linux 大学教程》 - 第二十五章 学习笔记  文件操作

《Unix & Linux 大学教程》 - 第二十六章(一) 学习笔记  进程和作业控制

《Unix & Linux 大学教程》 - 第二十六章(二) 学习笔记  进程和作业控制

《Unix & Linux 大学教程》 - 附录F 时区与24小时制时间


 

 

第二十二章:vi文本编辑器(三)

设置选项

两种选项类型:开关与变量

开关语法:

:set [no]option...

开关 缩写 默认值 含义
autoindent ai off 和shift width相关,缩进以匹配上一行/下一行
autowrite aw off 如果文本已经修改,则在切换文件前保存
errorbells eb off 当显示错误消息时发出滴滴声
exrc ex off 在当前目录中查找初始化文件
ignorecase ic off 在搜索过程中忽略大小写
list -- off 将制表符显示为^I,将行的结束显示为$
number nu off 显示行号
readonly ro off 不允许修改编辑缓冲区的内容
showmatch sm off 输入模式:显示匹配的()、{}或[]
showmode smd off 当进入输入模式时显示一个提醒
wrapscan ws off 在搜索过程中,环绕到文本的开头/末尾继续搜索
writeany wa off 允许不需要重载! 就可以写入任何文件

 

变量语法:

:set option[=value]...

变量 缩写 默认值 含义
lines -- 24 文本的行数(窗口/屏幕大小-1)
shiftwidth sw 8 autoindent 使用的空格数量
tabstop ts 8 制表符间距
wrapmargin wm 0 设置自动换行时的页边距(0=off)

 

 

显示选项

语法:

:set [option[?]... | all]

:set all:显示所有选项的值

:set number? showmode?:显示多个选项的值

:set:显示改变了默认值的选项

 

 

 

键入过程中自动换行

语法:

:set wrapmargin=n(n为距离右边距的字符数)

wrapmargin=0(不自动换行)

(不知道这个怎么用,我这里似乎没有什么效果。。。)

 

:set autoindent(设置自动缩进)

(这个实验是有效果的,换行之后,新行与上行与左边距的距离相同)

 

 

 

分隔与连接行

语法:

r<Return>:在光标处换行(在修改文本中讲过r了)

J:连接行,在所在行执行J,结果将下一行接到本行末尾(自动插入空格,单词间一个,句子间两个)

3J:我机器上的结果为将3行合并为一行,而不是执行3次J(3次J则是将4行合并为一行)

 

 

 

复制与移动行

语法:

:x[,y]coz:x,y,z为行号。将第x(至第y)行复制到第z行的下面

:x[,y]mzx,y,z为行号。将第x(至第y)行移动到第z行的下面

 

 

 

输入shell命令

语法:

:!command:暂停vi,执行shell命令

:!!:暂停vi,执行前一条命令

:sh:暂停vi,启动一个新shell(默认shell)

:!bash:暂停vi,启动一个新Bash shell

:!tcsh:暂停vi,启动一个新Tcsh shell

 

 

 

将文件中的数据插入到编辑缓冲区中

语法:

:[line]r file:在第line行之后插入file

:$r text(在末尾插入文件text)

 

 

 

将shell命令的输出插入到编辑缓冲区中

语法:

:[line]r !command:在第line行之后插入执行command命令后输出的内容

:r !ls -l(在当前行下面插入ls -l后的输出)

 

 

 

使用程序处理数据

!和!!命令将把编辑缓冲区中的行发送给另一个程序,该程序的输出将替换原始行

语法:

n!!program:在n个行上执行程序program

!move progarm:从当前行至move行执行程序program

5!!sort(从当前行开始,到连续5行的文本执行sort命令)

!Gsort(从当前行开始,文本末尾执行sort命令)

 

 

 

将数据写入文件

语法:

:w:将数据写入原始文件

:w file:将数据写入到一个新的文件(如果这个文件不存在,则会提示警告,如果确实要覆盖,使用下面的命令)

:w! file:覆盖一个已有的文件

:w>>file:将数据追加到指定的文件

 

 

 

切换到一个新文件

语法:

:e file:切换到新的文件(如果当前文件有未保存内容,则需要保存,如果不想保存,则需使用下面的命令)

:e! file:切换到新的文件,忽略对当前文件的修改

:e!:忽略当前的修改,重新编辑此文件

 

 

 

 

使用缩写

语法:

:ab [short long]:缩写(abbreviate),在输入模式中使用(只有缩写成为单独单词时才会自动补全)

:una short:反缩写(un-abbreviate),删除一个缩写

:ab:查看缩写列表

 

 

 

在命令模式下使用的单字符缩写

Vi:可以用作宏名称的字符
字母 g  K  q  v  V  Z
标点符号 @  #  *  \
Ctrl字符 ^A  ^K  ^O  ^W  ^X

 

Vim:可以用作宏名称的字符
字母 K  q  v  V
标点符号 @  \
Ctrl字符 ^@  ^A  ^K  ^O  ^W  ^X

语法:

:map [x commands]

x为一个字符

commands是vi或ex命令序列

 

:map g 1G:输入g,则跳转到第一行

:map K deep:输入K,则调换两个单词

:map * I/* ^V^[A */^V^[:把当前行变为/*……*/形式的注释(在当前行前后分别加入/*和*/

(^V^[,输入一个<ESC>码)

 

某些版本允许将宏赋给F1-F10

语法:

:map #number commands

:map #3 :set all:将F3设置为查看所有选项

 

移除宏

:unmap x

 

 

 

初始化文件

vi:.exrc

vim:.vimrc

一些版本的vi(或vim)不允许初始化文件中有空行,并且可能会提示一个不明确的错误消息,比如:Error detected in .exrc

如果home中有初始化文件,则加载,并执行其中命令

 

 

使用两个初始化文件

检查exrc选项,如果是打开的,则在当前目录下查找第二个初始化文件来执行

 

 

 

相关文档/帮助

vimtutor

:help

:help-user-manual

:help-differences

 

 

 

 

 

转贴请保留以下链接

本人blog地址

http://su1216.iteye.com/

http://blog.csdn.net/su1216/

3
0
分享到:
评论

相关推荐

    鸟哥的私房菜Linux学习笔记

    #### 第二章 Linux是什么 **1. Linux历史** - **起源**: 1991年,Linus Torvalds基于GNU工具和Minix设计灵感开发出Linux内核。 - **重要事件**: - 1969年: Ken Thompson开发Unix原型。 - 1973年: C语言用于重写...

    Linux学习笔记.pdf,linux详解,LINUX

    本资料“Linux学习笔记.pdf”将带你深入理解Linux的基础知识和高级应用。 一、Linux系统概述 1. Linux的起源:Linux的诞生源于托瓦兹对Minix系统的不满,他决定创建一个符合个人需求的、免费的Unix-like操作系统...

    linux学习笔记 .doc

    Linux学习笔记概述 Linux是一种自由和开放源代码的操作系统,其设计目标是提供一个轻量级、高效且安全的计算平台。Linux系统采用类UNIX目录结构,每个目录都有特定的功能和用途。以下是对Linux主要目录及其内容的...

    linux系统学习笔记

    ### Linux系统学习笔记 #### 一、Linux系统Shell介绍 1. **Linux系统Shell类型**:Linux系统提供了多种Shell供用户选择,常见的包括Bourne shell (`sh`), C shell (`csh`), Korn shell (`ksh`)等。其中,`sh`是Unix...

    linux与unix经典编程

    - 第一部分的第二个至第十个字符分为三个三元组(triplet),分别表示文件属主、组用户和其他用户的权限。 - 第二部分表示文件的硬链接数目。 - 第三部分表示文件属主。 - 第四部分表示文件属主所在的默认组。 - 第...

    2009 达内Unix学习笔记

    集合了 所有的 Unix命令大全 登陆服务器时输入 公帐号 openlab-open123 telnet 192.168.0.23 自己帐号 sd08077-you0 ftp工具 192.168.0.202 tools-toolss 老师测评网址 http://172.16.0.198:8080/poll/ 各个 ...

    APUE读书笔记(Unix高级环境编程)

    #### 第二章 Unix标准化及实现 - **主要标准**:介绍POSIX标准、IEEE Std 1003.1以及其他相关标准。 - **主要Unix系统实现简介**:列举不同的Unix变种(如Solaris、AIX、HP-UX等),并简要说明其特点。 - **系统...

    第11章 Linux操作系统基础-教程与笔记习题

    以下是对"第11章 Linux操作系统基础"的主要知识点的详细阐述。 一、Linux操作系统简介 Linux是基于Unix的操作系统,由林纳斯·托瓦兹于1991年创建。它的内核是开源的,允许全球开发者对其进行修改和优化。Linux系统...

    成功之路Oracle11g学习笔记 笔记0420

    - **主要内容**: 包括了 Oracle 11g 的基础学习内容,覆盖了第 1 至 6 章以及第 11、12、14、22 和 23 章。 #### 二、Oracle 服务器端安装 ##### 2.2 Oracle 安装 - **最低安装要求**: - 内存: 通常建议至少 2GB ...

    嵌入式Linux入门笔记

    通过“嵌入式Linux入门笔记”,学习者将能了解嵌入式系统的基础概念,熟悉Linux内核、设备驱动、Bootloader的工作原理,掌握构建和调试嵌入式系统的技能,为成为一名合格的嵌入式Linux开发者打下坚实基础。

    python学习笔记

    ### Python学习笔记知识点总结 #### 一、Python简介与特点 **1.1 Python起源与发展** - **创建背景:** Python由Guido van Rossum在1989年圣诞节期间创建,旨在解决当时编程语言的一些不足之处。 - **设计理念...

    OS + Unix FreeBSD / MacOSX Snow Leopard 10.6.3-8 / MacBook Pro / apple / MC373

    根据压缩包中的文件名“Macbook_Pro上安装三系统详解教程.txt”,我们可以推测这个教程将指导用户如何在MacBook Pro上同时安装Unix FreeBSD、MacOSX Snow Leopard以及可能的第三个操作系统,例如Windows或Linux。...

    c#学习笔记.txt

    c#学习笔记(1) 51099在线学习网发布 文章来源:网络收集 发布时间:2006-05-25 字体: [大 中 小] 51099在线学习网 http://www.51099.com 1, 结构(struct) 与 类(class) [attributes] [modifiers] struct ...

    linux-python

    IPv4由32位二进制组成,通常以四段十进制表示,如192.168.78.22;IPv6则为128位二进制,以十六进制表示,如fe80::bc92:8。随着IPv4地址的枯竭,IPv6正在逐渐普及。 总的来说,这个PDF教程旨在帮助读者掌握Linux环境...

    Linux笔记[整理].pdf

    Linux操作系统是开源的类Unix系统,广泛应用于服务器、嵌入式设备和桌面环境中。了解Linux的基础知识,特别是其目录结构和命令行操作,对于软件开发人员来说至关重要。 首先,让我们来详细了解一下Linux的目录结构...

    总结搜集的shell脚本学习笔记(完结篇).pdf

    ### Shell脚本编程知识点概述 #### 一、预备知识与基本概念 在开始Shell脚本文档的学习之前,首先需要理解Shell...以上就是文档《总结搜集的shell脚本学习笔记(完结篇)》中所涵盖的主要知识点,希望对你有所帮助。

    网络三级考试笔试笔记教材

    - 操作系统:Windows、UNIX、Linux等。 3. **计算机技术指标**: - **位数**:指寄存器的字长,如8位、16位、32位、64位等。 - **速度**:通常以主频衡量CPU的运算速度。 - **容量**:包括内存和外存,常用单位...

    计算机导论-教案.pdf

    - 操作系统:管理硬件资源和软件资源,如DOS、Windows、UNIX和Linux等。 - 程序设计与语言:包括编译、解释方式,低级语言和高级语言的区别。 6. **数据库管理系统**: - 常见的数据库系统如FoxBASE、Access、...

    Linux 101考试模块化培训笔记(Andrew McGill)Linux 101 Examination Modular Training Notes (Andrew McGill)

    Linux 101考试模块化培训笔记是为Linux专业人士协会(LPI)的LPI 101考试准备的,尤其针对考试的第2版目标。这本培训笔记由Andrew McGill编写,属于Leading Edge Business Solutions公司的Linux培训计划的一部分。该...

Global site tag (gtag.js) - Google Analytics