linux 打开文件、关闭文件、编辑模式、末行模式下操作等编辑指令

打开文件

  • vi

    vi grop.txt vi一个不存在的文件也可以创建文件
    vi 文件 打开文件,光标在第一行
    vi +22 profile 光标定位到文件的第22行
    vi + profile 光标定位到文件最后一行
    vi profile 打开文件后 shift+G 光标定位到最后一行
    vi +/要匹配字符 文件路径 光标定位到匹配字符那一行,如 vi +/if sxt/play.log

  • gedit

// 新开窗口,图形化编辑
gedit a.txt

关闭文件

:q   退出,没有动过文件
:wq   保存并退出
:q!    不保存并退出
:w      保存	
:w!      强行保存
:wq的简写方式:x
shiftzz   保存 并退出

编辑模式

i:光标在所在字符前面,转为输入模式
a:光标在所在字符后面,转为输入模式
o:光标在所在行的下面,新建一行,转为输入模式
O:光标在所在行的上面,新建一行,转为输入模式
大写的I:光标在所在行的行首,转为输入模式
大写的A:光标在所在行的行尾,转为输入模式

退出输入模式到编辑模式
esc

可视化编辑

  • 适合需要光标选中复制、删除的场景

v 键 之后选择 + y + p 复制粘贴所选内容

末行模式

:
:set nu    显示行号
:set nonu  不显示行号
:readonly  设置只读
:! 加命令   会退出vi到外壳中执行命令,再按enter键回到vi编辑
:1,$  1行到最后一行
:1,.   1行到当前光标行
:1,8  1行到8行
:.,+4  光标所在行向下偏移4行
:% 全文范围
:1,$-1  1行到最后一行前一行

还可以添加编辑命令
:1,$d    删除文章从第一行到最后一行

移动光标

字符
h  左   l右   j下  k上

单词
w 移动至下一个单词的词首
e  移动至下一个单词的词尾
b  移动当前或前一个单词的词首

指定字符查找
/查找字符   按 n/N 键到下一个

行内
0  行首
^ 行首的第一个非零字符
$  行尾

页首页尾
大写G  文章末尾
2大写G  第二行
3大写G  第三行
gg     文章开头

翻屏:
ctrl:f  下一页
ctrl:b  上一页

删除(x)和替换®单个字符

x  删除光标位置字符
3x  删除光标位置后面的三个字符
r    替换光标位置的字符
3r要换成的字符   替换光标位置后面的三个字符为指定字符   

范围查找替换

// 范围 s/原内容/新内容/全局
1,5 s/222/333/g

多个字符删除(d)

dw  删除一个单词
2dw  删除两个单词
dd   删除一行
3dd  删除三行

d加gg  从光标位置删到开头
d加G   从光标位置删到末尾  

剪切(d,p)

先删除后粘贴
4dd加p   剪切4行到p复制到光标所在位置的下一行
4dd加shift加p   剪切4行到p复制到光标所在位置的上一行

复制(y,p)

yw加p  复制光标所在位置字符到下一个单词之前的所有内容(包括所有的空白字符)
,复制到光标位置后
2yw加p 复制两个单词,到光标位置后
yy加p  复制一行到光标所在位置的下一行
2yy加p  复制两行到光标所在位置的下一行

撤销

u
撤销所做的撤销
ctrl加r 

重复上一次命令:

.

查找(/)

触发查找模式,n往下跳下一个匹配项,N往上跳

末行模式查找
:/after   定位到after的所在行的第一个字符

编辑模式(非输入模式)查找
/after  定位到after的a,定位到要查找字符的第一个字符所在位置

查找并替换(s)

末行模式:

查找替换每一行的一个查找内容
:1,$s/查找内容/替换内容/     在末行模式中$是文章最后一行,在编辑模式中是行尾,不一定是/做分隔符,#@等特殊字符也行
:1,$s/after/before/     从第一行到最后一行查找after并替换成before

查找替换每一行的所有查找内容(g)
:1,$s/after/before/g    加个g表示同一行的after全部替换成before

忽略大小写(i)
:1,$s/after/before/gi
:1,$s/after/before/i
  • 4
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值