vim文本编辑工具—修改文件内容

在vim中进行文本替换:

1.替换当前行中的from: :s/from/to/    (其中s是英文单词substitute第一个字母,表示替换的意思)

:s/from/to/  ==  :.s/from/to/  ,在s之前添加一个.(点)默认情况不写,表示当前行

Note::s/from/to/   将当前行中的第一个from,替换成to。如果当前行中含有多个from,只会替换其中的第一个from。如果要替换当前行中所有出现的from

可以加上“g” 写成这样s/from/to/ g

2.替换当前行中所有from并且是带有询问的:s/from/to/gc

3.替换某一行的内容:s/from/to/g   (替换第N行,N表示文件的第N行,N是行号)

:33s/from/to/g           替换第33行所有的 from为to

4.替换某些行的内容:N1,N2s/from/to/g   (替换N1至N2中所有from为to)

:1,33s/from/to/g     替换1行至33行

5. 替换全文的内容from :%s/from/to/g   == :1,$s/from/to/g

常用表示范围range,不写range:默认为光标的行

.  表示光标所在行

1   第一行

$   最后一行

33  第33行

‘a  标记a所在的行            :‘a,‘bs/from/to/  对标记a和标记b之间的行进行替换

.+1  当前光标所在行的下面一行

$-1  倒数第二行(这里说明我们可以对某一行加减某个数值来取得相对的行)

22,33   第22~33行

1,.    第一行至当前行

.,$  当前行至最后一行

‘a,‘b   标记a所在的行至标记b所在的行

%  所有的行 == 1,$  (表示所有的行)

6.连续注释文件多行的方法:
在vim编辑下

按冒号进入命令模式

:%s/^/#/  注释所有的行
:1,$s/^/#/ 注释所有的行   两者等价   这里用到替换

提示:

:N1,N2/^/#/  连续注释N1至N2行。
取消注释
:%s/^#/ /   取消注释的所有行
:N1,N2/^#//  取消注释N1至N2行

(2)第二种中方法

在vim下

ctrl + v 进入可视化模式
移动光标上移或者下移,选中多行的开头
选择完毕后,按大写的的I键,此时下方会提示进入“insert”模式,输入你要插入的注释符,例如#,

最后按ESC键,你就会发现多行代码已经被注释了

时间: 2024-10-25 11:36:17

vim文本编辑工具—修改文件内容的相关文章

java修改文件内容

文件的读和写,大家都不陌生,但是修改呢?按照普通的读写流去修改的话,只能全部读取出来,在内存中修改好后,全部写进去,这样对于文件内容过多的时,性能很低. 最近在遇到这个问题的时候,发现RandomAccessFile这个类正好能解决我的问题,废话不多说,下面直接贴代码,分享给大家,有不对的地方欢迎指教,谢谢 /**     * 修改文件内容     * @param fileName     * @param oldstr     * @param newStr     * @return  

[转载]sed实现直接修改文件内容

sed实现直接修改文件内容 sed是实现对流的编辑.通常,我们使用sed可以实现内容的编辑后然后保存成另外的一个文件,如果正确的话,才写入到源文件.但是某些时候,我们需要直接修改文件,因为,保存文件到一个文件,然后再覆盖原文件的办法显得很麻烦.其实很简单,只需要一个 -i 参数就可以了.比如,我想替换文件中的 properties 为 property ,可以使用 sed  's/properties/property/g'  build.xml这种方式,其实并没有修改build.xml文件的内

python修改文件内容,不需要read,write多个动作。

python  要修改文件内容,常用 是先read,后write , 再 rename,很不爽. 比如:需要 把       yuv_dir ="../HD/"   # "H:/HD_Master/1080i25/" 改为       yuv_dir ="C:/HD/"   # "H:/HD_Master/1080i25/" 很简单,但实际不好操作,因为read后文件指针就到后一行了,要使用seek到前一行等,很不好. 很多应

linux下C++修改文件内容

C fwrite在任意位置写入文件,并可修改文件内容 想实现类似迅雷那样下载时可以从文件半中间写入的功能 1 #include<stdio.h> 2 int main() 3 { 4 FILE *fp; 5 fp=fopen("overwrite.bin","rb+"); //使用rb+模式,可以往半中间插入数据,而且是覆盖插入,若使用"ab+"每次都插入到最后面,调用fseek也没用 6 if(NULL != fp) 7 { 8 i

python 修改文件内容

python 修改文件内容 一.修改原文件方式 1 def alter(file,old_str,new_str): 2 """ 3 替换文件中的字符串 4 :param file:文件名 5 :param old_str:就字符串 6 :param new_str:新字符串 7 :return: 8 """ 9 file_data = "" 10 with open(file, "r", encoding

python 文件操作(二) 替换性修改文件内容

正常情况我们想要仅对文件某一行的内容进行修改,而不改变其他内容,在原文件的基础上不能修改,因为当我们对原文件进行写操作时,如果原文件里面有内容,就会清空,在这种情况下,只能对文件进行替换性修改:即重新创建一个文件,把原文件的内容按行复制到新文件里,当复制到要修改的那一行时,就用我们需要的内容来替换原有的内容 eg:我们要修改原文件的第五行内容为"hello,小双双",实现源码如下: # 替换性修改文件内容 f_read = open('小双双', 'r', encoding='utf8

VIM文本编辑工具

VIM:文本编辑处理工具 三种主要模式 模式转换 关闭文件 扩展命令模式 :q 退出 :q! 强制退出,丢弃做出的修改 :wq 保存退出 :x 保存退出 ? 命令模式 : ZZ 保存退出 ZQ 不保存退出 扩展命令模式: 常见命令 w 写(存)磁盘文件 wq 写入并退出 x 写入并退出 q 退出 q! 不存盘退出,即使更改都将丢失 r filename 读文件内容到当前文件中 w filename 将当前文件内容写入另一个文件 !command 执行命令 r!command 读入命令的输出 命令

python 修改文件内容的程序

#1.修改文件的内容 #运行的时候要 python xxx.py hh.txt hehe hahaimport sys,osinputs = sys.argv#存的是所有运行时候传进来的参数#它就是用来获取在用python命令运行python文件的时候,传入的参数#1.判断用户输入的是不是够个数if len(inputs)<4: print('参数不够,至少需要3个参数,e.g: python xx.py xx.txt old_str new_str..')else: file_name = i

Python修改文件内容

import sys import os name=(sys.argv) #用来存储输入的4个参数 if len(name)<4: #判断输入参数是否小于4个 print('至少传入4个参数') exit() #如果小于4个参数,不往下执行直接退出 f=open('d:/'+name[1],'a+') #以追加方式打开要更改的文件 f1=open('d:/'+name[1]+'.new','w') #同时以写的方式打开一个新文件 f.seek(0) #文件指针指向开头 for line in f