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键,你就会发现多行代码已经被注释了
vim文本编辑工具—修改文件内容的更多相关文章
- vim文本编辑工具(全)
VIM文本编辑工具 编辑模式 i 在当前字符前插入I 在光标所在的行首插入a 在当前字符后插入A 在光标所在行尾插入o 在当前行的下一行插入新的一行O 在当前行的上一行插入新的一行 s ...
- linux --批量修改文件内容
由于目前测试的BIOS有一个option 发生了改变,因此我们需要在之前写好的脚本上进行修改,将旧的option 改为新的选项,因此在此处用到了批量修改文件中的内容: 1. perl 命令替换: pe ...
- Web 在线文件管理器学习笔记与总结(5)修改文件内容
① 读出要修改的文件的内容 ② 进行修改 ③ 将修改后的内容写进文件 index.php: <?php require 'dir.func.php'; require 'file.func.ph ...
- java修改文件内容
文件的读和写,大家都不陌生,但是修改呢?按照普通的读写流去修改的话,只能全部读取出来,在内存中修改好后,全部写进去,这样对于文件内容过多的时,性能很低. 最近在遇到这个问题的时候,发现RandomAc ...
- python笔记(三)---文件读写、修改文件内容、处理json、函数
文件读写(一) #r 只读,打开文件不存在的话,会报错 #w 只写,会清空原来文件的内容 #a 追加写,不会请求,打开的文件不存在的话,也会帮你新建的一个文件 print(f.read()) #获取到 ...
- Java之修改文件内容:字符串逐行替换
依赖包: <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</a ...
- linux下C++修改文件内容
C fwrite在任意位置写入文件,并可修改文件内容 想实现类似迅雷那样下载时可以从文件半中间写入的功能 #include<stdio.h> int main() { FILE *fp; ...
- python 修改文件内容
python 修改文件内容 一.修改原文件方式 1 def alter(file,old_str,new_str): 2 """ 3 替换文件中的字符串 4 :param ...
- python 文件操作(二) 替换性修改文件内容
正常情况我们想要仅对文件某一行的内容进行修改,而不改变其他内容,在原文件的基础上不能修改,因为当我们对原文件进行写操作时,如果原文件里面有内容,就会清空,在这种情况下,只能对文件进行替换性修改:即重新 ...
随机推荐
- CF914F Substrings in a String
Description 给你一个字符串ss,共有qq次操作,每个都是下面两种形式的一种. 11 ii cc 这个操作表示将字符串ss的第ii项变为字符cc 22 ll rr yy 这个操作表示输出字符 ...
- linux命令(12):ping命令
1.ping网关:ping –b 192.168.1.1 2.ping指定次数:ping -c 10 192.168.1.100 3.时间间隔和次数限制的ping:ping -c 10 -i 0.5 ...
- telent
telnet ip 空格 port ctrl+] 进入 命令后 quit 退出 在linux/unix下使用telnet hostname port连接上主机后会提示Escape chara ...
- 【转】Jmeter-----函数引用和函数重定向
详见内文
- NET应用——你的数据安全有必要升级
最近又被[现场破解共享单车系统]刷了一脸,不得不开始后怕:如何防止类似的情况发生? 想来想去,始终觉得将程序加密是最简单的做法.但是摩拜.ofo也有加密,为什么仍然被破解?那是因为请求在传输过程中被篡 ...
- Centos7下安装破解confluence6.3
confluence是一个专业的企业知识管理与协同软件,可以用于构建企业wiki.通过它可以实现团队成员之间的协作和知识共享.现在大多数公司都会部署一套confluence与jira的结合,用作内部w ...
- lamp字符编码的转换规则
1.lamp字符编码的转换规则 lamp(Linux+Apache+Mysql+PHP) 1.1GB 2312 GB 2312 或 GB 2312-80 是中国国家标准简体中文字符集,全称<信息 ...
- 如何通过 Redis 实现分布式锁
分布式锁需要解决的问题: 互斥性:任意时刻只能有一个客户端获取锁 安全性:锁只能被持有该锁的客户端删除 死锁:获取锁的客户端因为意外宕机未能释放锁,其他客户端再也无法获取到该锁导致死锁 容错:宕机后客 ...
- 洛谷P3901 数列找不同 [莫队]
题目传送门 题目描述 现有数列 A_1,A_2,\cdots,A_NA1,A2,⋯,AN ,Q 个询问 (L_i,R_i)(Li,Ri) , A_{Li} ,A_{Li+1},\cdots, ...
- Linux命令之passwd、chpasswd
(1).命令passed passwd [-k] [-l] [-u [-f]] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inacti ...