第二章:Linux文件管理 - 2.3~2.4 编辑器

文本编辑器:vi,vim,nano

vi编辑器的工作模式

 

正常模式:

低端什么也没有或者只有文件名,改模式表示 命令模式(正常模式)

插入模式:

低端有INSERT字样表示当前模式为插入模式

命令模式:

低端含有:,表示当前模式为扩展命令模式(冒号模式/命令模式)

可视模式:

分别表示 ‘可视行’、‘可视’、‘可视块’

 

命令模式(正常模式):

(1)光标定位

  • hjkl(左、下、上、右)
  • 0  $(0:当前行首;$:当前行尾)
  • gg  G(gg:第一行首;G:最后一行行首)
  • 3G(第三行行首)
  •  /xxx(快速定位到含有xxx的行;n 向下定位,N 向上定位)
  •  /^xxx(快速定位以xxx开头的行;n 向下定位,N 向上定位)
  • /xxx$(快速定位以xxx结尾的行;n 向下定位,N 向上定位)

(2)文本编辑(少量)

    y 复制

  • yy 复制当前光标行
  • 3yy 复制当前光标以下3行(包括当前光标行)
  • ygg 从当前光标位置一直复制到第一行
  • yG 从当前光标位置一直复制到最后一行

    p 粘贴

   d 删除

  • dd 删除当前光标行
  • 3dd 删除当前光标以下3行(包括当前光标行)
  • dgg 从当前光标位置一直删除到第一行

dG 从当前光标位置一直删除到最后一行

   x 删除光标所在的字符

   D 从光标处删除到行尾

   u 撤销

   Ctrl + r 反撤销

   r  可以用来修改当前光标的一个字符

(3)进入其它模式

  • i  进入插入模式
  • o 进入插入模式
  • A 进入插入模式
  • a 进入插入模式  
  • :进入末行模式(扩展命令模式)
  • v  进入可视模式
  • Ctrl+v  进入可视块模式(通过方向键可选中块,然后通过 y进行复制,p进行粘贴)
  • V 进入可视行模式(通过方向键可选行,然后通过 y进行复制,p进行粘贴)
  • R 进入替换模式(可以连续替换当前光标所在的字符)

插入模式:

Ctrl + p 或者 Ctrl + n 能自动提示需要插入的字符(只能在vim下使用,vi不支持)

可视块模式:

(1)块插入(在指定块前面加入字符):选择块 =》按 I =》在块前面插入字符 =》 按ESC

(2)块替换:选择块 =》按 r =》输入替换的字符

(3)块删除:选择块 =》按 d  或者 x

(4)块复制:选择块 =》 按 y

扩展命令模式(冒号模式):

(1)保存退出

  • :10 进入第10行
  • :w 保存
  • :q 退出
  • :wq 保存并退出
  • :w! 强制保存
  • :q! 不保存并退出
  • :wq! 强制保存退出
  • :x 保存并退出
  • ZZ 保存并退出

(2)查找替换

  • :1,5 s/xxx/yyy/(查找1-5的每一行的第一个xxx字符将其换成yyy)
  • :5,$ s/xxx/yyy/(查找5-最后一行的每一行的第一个xxx字符将其换成yyy)
  • :1,$ s/xxx/yyy/g【等同于 :% s/xxx/yyy/g】(查找5-最后一行的xxx字符将其换成yyy)
  • :% s#/dev/sda#/var/ccc#g(将所有的/dev/sda换成/var/ccc)
  • :,8 s/xxx/yyy/(从当前行到第8行的第一个xxx换成yyy)
  • :4,9 s/^#//(正则:将4-9行以#开头的#换成空)
  • :5,10 s/.*/#&/(5-10行开头加入#字符【.*整行  &引用查找的内容】)
  • :5,10 s/.*/&#/(5-10行结尾加入#字符【.*整行  &引用查找的内容】)

(3)读入文件/写入文件(另存为)

  • :w 存储到当前文件
  • :w /tmp/aaa.txt 另存为/tmp/aaa.txt
  • :1,3 w /tmp/aaa.txt  将1-3行另存为/tmp/aaa.txt
  • :r /etc/hosts 读入文件到当前光标行后
  • :5 r /etc/hosts 读入文件到第5行后

(4)环境设置

临时环境:

:set nu 设置行号

:set ic 不区分大小写(使用场景:先设置不区分大小写,然后可使用查找)

:set ai 自动缩进

:set list 显示控制字符

:set nonu 取消行号

:set noic 取消不区分大小写

永久的环境:

/etc/vimrc    影响所有系统的用户

~/.vimrc  影响某一个用户

举例:

vim ~/.vimrc  #默认不存在,自动创建
set ic
set nu

 

:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值