
nc10@your-5554c55be4 ~
$ cat sheet
server 127.0.0.1 localhost connected yes 12-3-08
server 127.0.0.1 localhost connected no 12-3-08
server 127.0.0.1 localhost connected yes 14-9-09
server 127.0.0.1 localhost connected yes 15-9-09
server 127.0.0.1 localhost connected no 16-9-09
nc10@your-5554c55be4 ~
$ sed '/^server.*$/s//&test/g' sheet
server 127.0.0.1 localhost connected yes 12-3-08 test
server 127.0.0.1 localhost connected no 12-3-08 test
server 127.0.0.1 localhost connected yes 14-9-09 test
server 127.0.0.1 localhost connected yes 15-9-09 test
server 127.0.0.1 localhost connected no 16-9-09 test
nc10@your-5554c55be4 ~
$
希望没理解错你的意思,呵呵
如果文件这样也可的,因为 /^server/ 限定了 只是行头是
server 才在行尾插入字符
user@minix-nb:~$ cat sheet
remote 127.0.0.1 localhost connected yes 12-3-08
server 127.0.0.1 localhost connected no 12-3-08
remote 127.0.0.1 localhost connected yes 14-9-09
server 127.0.0.1 localhost connected yes 15-9-09
remote 127.0.0.1 localhost connected no 16-9-09
user@minix-nb:~$ sed '/^server.*$/s//&test/g' sheet
remote 127.0.0.1 localhost connected yes 12-3-08
server 127.0.0.1 localhost connected no 12-3-08 test
remote 127.0.0.1 localhost connected yes 14-9-09
server 127.0.0.1 localhost connected yes 15-9-09 test
remote 127.0.0.1 localhost connected no 16-9-09
user@minix-nb:~$
1.多行行首插入指定字符串
[plain] view plain copy
:1,6 s/^/System.out.println("
:2,$ s/^/System.out.println(" 注:此为2行至尾行
:% s/^/System.out.println(" 注:此为所有行
2.多行行尾插入指定字符串
[plain] view plain copy
:1,6 s/$/")
:2,$ s/$/") 注:此为2行至尾行
:% s/$/") 注:此为所有行
3.删除多行行首指定字符串
[plain] view plain copy
:% s/^.\{16\}
也可以使用以下命令:
[plain] view plain copy
:% s/System.out.println("/
4.删除多行行尾指定字符串
[plain] view plain copy
:% s/")$//g
% 指匹配整个文件,s 是置换的意思,$ 代表匹配行尾的内容,最后的 g 则表示每行中匹配到的内容都要置换。
也可以使用以下命令:
[plain] view plain copy
:% s/")/
有一个PHP文件,由于某些原因,每行的最后分号结束符丢失,我们期望将其批量补全。原数据:
期望数据:
这里涉及两个问题:
1、只要2-4行需要在末尾添加分号
2、每个行的字符串长度均不一致
解决思路:
1、方式一:通过视图模式将需要修改的块进行选中然后批量修改
2、方式二:通过命令行模式追回
步骤:
1、光标在第二起始,按下 ctrl+v 进入视图模式的块选择
2、按下 jj$ ,把需要的块进行选择
3、按下 A ,进入修改状态,输入
4、按下Esc退出,完成
释义:
1、 ctrl+v 是进入块选择模式
2、 jj 向下选择两行, $ 执行到末尾
3、A进行修改模式,输入自己的需要的内容
4、一定需要按 Esc 退出,完成整个块的修改
在命令模式下,输入:
释义:
1、:normal 可在命令行命令下切换到普通模式
2、在普通模式下,执行 A指令,可以在行尾添加一个
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)