vim编辑器:
vim末行模式:
内建的命令行接口

(1)地址定界
:start_pos[,end_pos]
#:特定的第#行,例如5即第5行
.:当前行
.,+#:当前行,加#行的行范围
$:最后一行
#,#:指定行范围,左侧为起始行,右侧为结束行;
#,+#:指定行范围,左侧为起始行绝对编号,右侧为相对左侧秸的偏移量;例如:3,+7
.,$-1:当前行到倒数第二行
1,$:表示全文
%:表示全文
/pattern/:从光标所在处起始向文件尾部第一次被模式所匹配到的行
/pattern/,$:从光标所在处起始向文件尾部第一次被模式所匹配到的行至文件尾部
/pat1/,/pat2/:从光标所在处起始向文件尾部第一次被第一个模式所匹配到的行至第一次被第二个模式所匹配到的行结束之间的所有行

可同编辑命令一同使用,实现编辑操作:
d
y
c

w /PATH/TO/SOMEFILE:将范围内的文本保存至指定的文件中;
r /PATH/TO/SOMEFILE:将指定的文件中的文本读取并插入至指定位置;

(2)查找
/PATTERN:从当前光标所在处文件尾部查找能够被当前模式匹配到的所有字符串;
?PATTERN:从当前光标所在处文件首部查找能够被当前模式匹配到的所有字符串;
n:下一个,与命令方向相同;
N:上一个,与命令方向相反;

(3)查找并替换
s:末行模式的命令:使用格式
s/要查找的内容/替换为的内容/修饰符
要查找的内容:可使用正则表达式;
替换为的内容:不能使用正则表达式,但可以引用;
如果“要查找的内容”部分在模式中使用分组符号:在“替换为的内容”中使用后向引用;
直接引用查找模式匹配到的全部文本,要使用&符号;
修饰符:
i:忽略大小写
g:全局替换,意味着一行中如果匹配到多次,则均替换

可把分隔符替换为其它非常用的符号:
s@@@
s###

示例:
把全文中的以t开头的单词都改成T开头的单词
:%s@\<t\([[::alpha]]\+\)\>@T\1@g
把全文中的以t开头的单词都加上er
:%s@\<t[[:alpha:]]\+\>@&er@g
删除全文中的以#开头的行中的#
:%s@^#@@

vim的多文件功能:
同时打开多个文件
vim file1 file2 ……
大文件间切换:
:next 下一个
:prev 上一个
:first 第一个
:last 最后一个

退出所有文件:
:wqall 保存并退出所有文件
:wall 保存所有文件
:qall 退出所有文件

多窗口打开多个文件:
-o:水平分割窗口显示不同文件,按ctrl + w 可以在不同文件间切换
-O:垂直分割窗口显示不同文件,按ctrl + w 可以在不同文件间切换
在窗口间切换:ctrl + w , ARROW
注意:单个文件也可以分割成多个窗口进行查看
ctrl+w,s:水平分割窗口
ctrl+w,v:垂直分割窗口

定制vim的工作特性:
注意:在末行模式下的设定,仅对当前vim进程有效
永久有效:
全局:/etc/vimrc
用户个人:~/.vimrc ##这个文件可能不存在,需要自己创建
~]# ll -a | fgrep vim
-rw------- 1 root root 5378 Jun 3 13:52 .viminfo
~]# touch ~/.vimrc && echo set nu > ~/.vimrc

1、行号
启用:set number,简写为set nu
禁用:set nonumber,简写为set nonu
2、括号匹配高亮
启用:set showmatch,简写为set sm
禁用:set nosm
3、自动缩进
启用:set autoindent,简写为set ai
禁用:set noai
4、高亮搜索
启用:set hlsearch
禁用:set nohlsearch
5、语法高亮
启用:syntax on
禁用:syntax off
6、忽略字符大小写
启用:set ic
禁用:set noic

获取帮助:
:help
:help subject

bash脚本编程之算术运算
+,-,*,**,%
算术运算格式:
(1) let VAR=算术运算表达式
(2) VAR=$[算术运算表达式]
(3) VAR=$((算术运算表达式))
(4) VAR=$(expr $ARG1 $OP $ARG2)
注意:乘法符号在有些场景中需要使用转义符

vim文本编辑及文件查找应用2的更多相关文章

  1. vim文本编辑及文件查找应用3

    文件查找 locate,find两个命令 在文件系统上查找符合条件的文件: 实现工具:locate,find locate命令: 依赖于事先构建好的索引库,索引库可以由下边两种方式构建 系统自动实现( ...

  2. vim文本编辑及文件查找应用1

    vim编辑器:    文本编辑器:        文本:纯文本,ASCII text;Unicode(全球通用); 文本编辑种类:        行编辑器:sed        全屏编辑器:nano, ...

  3. vim文本编辑及文件查找应用4

    linux系统上的特殊权限 : 特殊权限有:SUID,SGID,STICKY 安全上下文: 1.进程以其发起者的身份运行:进程对文件的访问权限,取决于发此进程的用户的权限:进程是发起些进程用户的代理, ...

  4. Linux使用vim进行多文件查找和替换的方法

    vim是Linux系统下常用的文本编辑,通过使用多种shell命令能够实现多文件的查找和替换,那么具体会使用到那些命令呢?下面小编就给大家介绍下Linux系统vim多文件查找和替换的方法. 在linu ...

  5. VIM批量文件查找和替换

    使用vim时间不长,linux命令行下常用的文本编辑工具,所以需要掌握一些基本的用法.很多不会的不是百度就谷歌,总有你想要的答案. 1. 批量文件查找内容 vimgrep 比如在当前目录下查找带有“a ...

  6. Linux的VMWare中Centos7文件查找(find-grep)和vim文本编辑器基操

    一.find文件查找 grep 匹配字段 文件名 ——筛选文件   find查找 语法参数示例 格式: find 查找范围 查找类型 参数   find / -name *.conf   按文件名查找 ...

  7. vim文本编辑工具(全)

    VIM文本编辑工具 编辑模式 i    在当前字符前插入I   在光标所在的行首插入a 在当前字符后插入A 在光标所在行尾插入o 在当前行的下一行插入新的一行O 在当前行的上一行插入新的一行 s   ...

  8. (大数据工程师学习路径)第一步 Linux 基础入门----环境变量与文件查找

    环境变量与文件查找 本节介绍环境变量的作用与用法,及几种搜索文件的方法.学会这些技巧高效地使用 Linux. 一.环境变量 1.变量 要解释环境变量,得先明白变量是什么,准确的说应该是 Shell 变 ...

  9. 12 文件查找--find命令

    之前,我们学习过grep来过滤文件内容,而这种查找找的是某一个文件内的内容:以及 less 或者 man 或者上一节提到的 vim 编辑器中的 / 与 ? 都是用来查找单个文件内的内容.而这一节,我们 ...

随机推荐

  1. 【手记】解决Graphics.DrawImage带ImageAttributes在XP报内存不足的问题

    异常信息: System.OutOfMemoryException: 内存不足. 在 System.Drawing.Graphics.CheckErrorStatus(Int32 status) 在 ...

  2. 数据库基础知识介绍(MySQL)

    一.什么是数据库 1.数据库概念:数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,每个数据库都有一个或多个不同的API接口用于创建,访问,管理,搜索和复制所保存的数据. 2.RD ...

  3. Ubuntu 18.04 更换阿里源

    1.备份 sudo cp /etc/apt/source.list /etc/apa/source.list.bak 2.编辑 sudo vim /etc/apt/source.list 3.修改内容 ...

  4. C/C++编程

    基本的数据类型: 整型 浮点型(单精度.双精度) 在c语言中,所有的变量声明必须在任何执行语句之前(对当前域来说), 否则编译的时候会出现变量是未声明的标识符的错误. main 入口参数:argc 和 ...

  5. python初学第一节课

    ### python的基础 推荐学习python的一些资料, 首先就是书籍<Python从入门到实践>, 这本书评分很高, 主要是对Python讲解的比较清楚, 后面还有具体的实战项目 推 ...

  6. 【leetcode算法-简单】13. 罗马数字转整数

    [题目描述] 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做 II ,即为两个并列 ...

  7. [转载]ASP.NET Core文件上传与下载(多种上传方式)

    ASP.NET Core文件上传与下载(多种上传方式)   前言 前段时间项目上线,实在太忙,最近终于开始可以研究研究ASP.NET Core了. 打算写个系列,但是还没想好目录,今天先来一篇,后面在 ...

  8. 剑指offer45:扑克牌顺子

    1 题目描述 LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)...他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话, ...

  9. Snoopy.class.php介绍

    Snoopy是一个开源的模拟抓取工具,找到一个不错的介绍网页 记录一下: php开源采集类Snoopy.class.php功能使用介绍与下载地址 Snoopy.class.php使用手册 还有一个介绍 ...

  10. operator模块和functools模块

    operator模块 在函数式编程中,经常需要把算术运算符当作函数使用.例如,不使用 递归计算阶乘.求和可以使用 sum 函数,但是求积则没有这样的函数. 我们可以使用 reduce 函数(5.2.1 ...