`
gelongmei
  • 浏览: 209530 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

VIM 操作大全

 
阅读更多
vim 替换操作大全
vi/vim 中可以使用 :s 命令来替换字符串。以前只会使用一种格式来全文替换,今天发现该命令有很多种写法(vi 真是强大啊,还有很多需要学习),记录几种在此,方便以后查询。

:s/vivian/sky/ 替换当前行第一个 vivian 为 sky

:s/vivian/sky/g 替换当前行所有 vivian 为 sky

:n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky

:2,$s/vivian/sky/g 替换第 2 行开始到最后一行中每一行所有 vivian 为 sky

n 为数字,若 n 为 .,表示从当前行开始到最后一行

:%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky

:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky

可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符

:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/

:%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/

1.:s/vivian/sky/ 替换当前行第一个 vivian 为 sky

:s/vivian/sky/g 替换当前行所有 vivian 为 sky

2. :n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky

:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky

(n 为数字,若 n 为 .,表示从当前行开始到最后一行)

3. :%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky

:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky

4. 可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符

:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/

5. 删除文本中的^M

问题描述:对于换行,window下用回车换行(0A0D)来表示,Linux下是回车(0A)来表示。这样,将window上的文件拷到Unix上用时,总会有个^M.请写个用在unix下的过滤windows文件的换行符(0D)的shell或c程序。

· 使用命令:cat filename1 | tr -d "^V^M" > newfile;

· 使用命令:sed -e "s/^V^M//" filename > outputfilename。需要注意的是在1、2两种方法中,^V和^M指的是Ctrl+V和Ctrl+M。你必须要手工进行输入,而不是粘贴。

· 在vi中处理:首先使用vi打开文件,然后按ESC键,接着输入命令:%s/^V^M//。

· :%s/^M$//g

如果上述方法无用,则正确的解决办法是:

· tr -d "\r" < src >dest

· tr -d "\015" dest

· strings A>B

6. 其它

利用 :s 命令可以实现字符串的替换。具体的用法包括:

:s/str1/str2/ 用字符串 str2 替换行中首次出现的字符串 str1

:s/str1/str2/g 用字符串 str2 替换行中所有出现的字符串 str1

:.,$ s/str1/str2/g 用字符串 str2 替换正文当前行到末尾所有出现的字符串 str1

:1,$ s/str1/str2/g 用字符串 str2 替换正文中所有出现的字符串 str1

:g/str1/s//str2/g 功能同上

从上述替换命令可以看到:g 放在命令末尾,表示对搜索字符串的每次出现进行替换;不加 g,表示只对搜索

字符串的首次出现进行替换;g 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。



转载自 ubuntu中文wiki

vim中删除技巧

:%s/[Ctrl-v][Enter]//g 删除DOS方式的回车^M
:%s= *$== 删除行尾空白
:%!sort -u 删除重复行
:%s/^.{-}pdf/new.pdf/ 只是删除第一个pdf
:%s/// 删除多行注释
:g/^$/d 删除所有空行
:g!/^dd/d 删除不含字符串'dd'的行
:v/^dd/d 删除不含字符串'dd'的行
:g/str1/,/str2/d 删除所有第一个含str1到第一个含str2之间的行
:v/./.,/./-1join 压缩空行
:g/^$/,/./-j 压缩空行
ndw 或 ndW 删除光标处开始及其后的 n-1 个字符。
d0 删至行首。
d$ 删至行尾。
ndd 删除当前行及其后 n-1 行。
x 或 X 删除一个字符。
Ctrl+u 删除输入方式下所输入的文本。
D 删除到行尾
x,y 删除与复制包含高亮区
dl 删除当前字符(与x命令功能相同)
d0 删除到某一行的开始位置
d^ 删除到某一行的第一个字符位置(不包括空格或TAB字符)
dw 删除到某个单词的结尾位置
d3w 删除到第三个单词的结尾位置
db 删除到某个单词的开始位置
dW 删除到某个以空格作为分隔符的单词的结尾位置
dB 删除到某个以空格作为分隔符的单词的开始位置
d7B 删除到前面7个以空格作为分隔符的单词的开始位置
d) 删除到某个语句的结尾位置
d4) 删除到第四个语句的结尾位置
d( 删除到某个语句的开始位置
d) 删除到某个段落的结尾位置
d{ 删除到某个段落的开始位置
d7{ 删除到当前段落起始位置之前的第7个段落位置
dd 删除当前行
d/text 删除从文本中出现“text”中所指定字样的位置,一直向前直到下一个该字样所出现的位置(但不包括该字样)之间的内容
dfc 删除从文本中出现字符“c”的位置,一直向前直到下一个该字符所出现的位置(包括该字符)之间的内容
dtc 删除当前行直到下一个字符“c”所出现位置之间的内容
D 删除到某一行的结尾
d$ 删除到某一行的结尾
5dd 删除从当前行所开始的5行内容
dL 删除直到屏幕上最后一行的内容
dH 删除直到屏幕上第一行的内容
dG 删除直到工作缓存区结尾的内容
d1G 删除直到工作缓存区开始的内容
分享到:
评论

相关推荐

    vim操作大全

    ### Vim操作大全 #### 一、Vim简介与启动 Vim是一款强大的文本编辑器,在各种操作系统中都得到了广泛的应用,包括UNIX系统、Microsoft Windows以及MS-DOS等环境。Vim支持多种工作模式,其中最基本的两种是普通模式...

    vim命令操作大全

    本图片包含大量的常用vim使用命令和操作,而且对所使用的命令进行了分类,方便查阅

    linuxvim操作图片

    linuxvim操作图片linuxvim操作图片linuxvim操作图片linuxvim操作图片

    vim命令大全(一张图片全搞定)

    vim命令大全(一张图片全搞定) vim命令大全(一张图片全搞定)

    ubuntu and vim 命令大全

    在Linux世界中,Ubuntu是一个广泛使用的开源操作系统,而Vim(Vi IMproved)则是一款强大的文本编辑器。本文将深入探讨Ubuntu系统中的常用命令以及Vim编辑器的基本操作,帮助你提升在Ubuntu环境下使用Vim的效率。 ...

    VIM命令大全图集

    VIM命令大全图集包含了各种VIM编辑器的基本和高级操作,这些图片文件很可能是各种操作的示意图或快捷键指南。 首先,让我们从基本操作开始。在VIM中,有三种模式:正常模式(Normal mode)、插入模式(Insert mode...

    vim 常用操作表

    vim 常用操作 简单明了,一看就懂 自己整理的,分享给大家

    vim操作键盘图

    vim各个操作按键在键盘上的分布图,包括保存,退出,打开文件,全局替换等等命令,方便记忆!

    vi-vim 键盘操作图

    **vi-vim 键盘操作图详解** vim(Vi IMproved)是一款强大的文本编辑器,深受程序员和系统管理员的喜爱。它的操作方式独特,注重效率,虽然初学者可能会觉得难以掌握,但一旦熟悉了其键盘操作,你会发现vim是...

    vim配置大全(含插件和配置文件)

    本资源提供了vim的配置大全,旨在帮助用户打造一个个性化且高效的开发环境。 首先,Vim的配置主要通过`.vimrc`文件进行,这是一个位于用户主目录下的文本文件。在这个文件中,你可以定义快捷键、设置选项、加载插件...

    VIM教程 vim操作手册

    VIM教程.pdf 详细的教你怎么使用vim工具,这是一个强大的编辑工具,值得学习

    vi/vim操作命令键盘图

    vi/vim操作命令对应的键盘位置图,很方便好用哦

    VIM 编辑器操作指南.doc

    学习和熟练掌握Vim的操作对于提高开发者的效率至关重要,因为它允许快速、精确的文本编辑,尤其适合处理大量代码。通过自定义配置,Vim可以适应个人的工作习惯,成为一个得力的开发工具。无论你是初学者还是经验丰富...

    Vim用户手册中文版7.3.pdf.zip_vim 7

    进行示例性的操作,在学习 Vim 众多精致的技巧时,不要贪图一下子全都 掌握,最好是看一条技巧后,马上在编辑器上进行操作,这样在以后实际的 编辑操作时你的手指就会建立一种自然的反应而不是由头脑来搜索该使用 哪...

    vim操作,打印出来可以直接参考

    文档里是vim操作的全部详细的图片,对于经常使用linux的人来说简直是方便至极

    vi&vim常用操作学习

    ### vi&vim常用操作学习 #### 一、vi与vim简介 vi (Visual Editor) 是一个功能强大的文本编辑器,在所有 Unix 和 Linux 系统中都有预装。它以其高效性和灵活性著称,广泛用于系统管理和软件开发。vim (Vi Improved)...

    vim离线rpm适用centos操作系统

    Vim(Vi Improved)是一款强大的文本编辑器,广泛应用于Linux系统中,包括CentOS操作系统。它以其高效、可配置和可扩展性而受到系统管理员和开发者的青睐。本压缩包包含的是Vim的离线安装包,适用于那些无法或者不便...

    vim操作详解(思维导图格式)

    以思维导图的格式,详解vim操作使用。vim爱好者可使用。

Global site tag (gtag.js) - Google Analytics