linux系统学习1-4:vi编辑器

第001节:vi编辑器的特色

第002节:vi编辑器的引入

vi编辑器的使用

  • 一个编辑器具备的功能:
    • 打开文件、新建文件、保存文件
    • 光标移动
    • 文本编辑
    • (多行|多列的)复制、粘贴、删除
    • 查找和替换
  • vi编辑器的配置
  • cd /etc/vim
  • cd vimrc ~/.vimrc
  • cd ~
  • gedit .vimrc
  • 在.vimrc中加入如下内容:
"关闭兼容功能
set nocompatible 
"显示行号
set number
"编辑时 backspace 键设置为2个空格
set backspace=2
"编辑时 tab 键设置为4个空格
set tabstop=4
"设置自动对齐为4个空格
set shiftwidth=4
"搜索时不区分大小写
set ignorecase
"搜索时高亮显示
set hlsearch
  • vi编辑器有三种模式:
    • 一般模式(光标移动、复制、粘贴、删除)
    • 编辑模式(编辑文本)
    • 命令行模式(查找和替换)
    • 注意:
      • 当不知道处于何种模式的时候,按ESC键返回到一般模式。
      • wq(write quit)
      • i(insert)
  • 打开文件、新建文件、保存文件
    • vi 文件名
      • 如果文件存在,输入结束后,按:wq保存并退出文件
      • 如果文件不存在,输入结束后,按:wq新建并保存文件
  • 在编辑完成后,返回一般模式
    • 输入:w则保存文件, 输入:q则退出文件
    • 输入:wq则保存并退出
    • 若不想保存被修改的内容,则:q!强制退出
  • 进入编辑模式
    • i(在光标前开始插入文本)
    • a(在光标后插入文本)
    • O(在当前行下新开一行,并到行首)

第005节:如何使vi快速移动光标(vi难点)

  • 光标移动

    • 在一般模式下,hjkl这四个键可以移动光标
      • h(左)
      • j(下)
      • k(上)
      • l(右)
    • 快速定位到某一行: (文件头、文件尾、指定某一行)

      • ngg光标移至第n行的行首(n为数字)
        -如1gg就跳转到第一行的行首,就是文件头
        -如2gg就跳转到第二行的行首
      • G转至文件结尾
      • 注意:ngg和G是在一般模式
    • 在某一行如何快速定位到某一列

      • 0(数字零)光标移至当前行行首
      • $光标移至当前行行末
      • fx搜索当前行中下一个出现字母x的地方
      • 注意:0、$、fx是在一般模式
  • vi的难点:

    • vi的操作之前,先判断一下当前是哪一种模式,再看光标所在位置,当不知在何种模式的时候,使用esc来返回到一般模式。
    • 再去看光标,难点就在于移动光标,可以做到快速移动光标至某一行某一列。

第006节:文本复制、粘贴、删除、撤销

  • 文本复制、粘贴、删除、撤销
    • yy复制当前行(y:yank(复制))
      • copy c c:change改变光标所在字符
    • nyy复制当前行及其后面n-1行(n是数字)
    • 使用p键来粘贴
    • dd删除光标所在行
    • ndd删除当前行及其后的n-1行(n是数字)
    • u键来撤销上一步的操作
    • x删除光标所在位置的字符
  • 注意:yy/nyy/dd/ndd/x/u都是在一般模式。

第007节:文本查找和替换

  • 文本查找:
    • /pattern 从光标开始处向文件尾搜索pattern,然后按下n或N
    • 注意:
      • n在同一个方向重复上一次的搜索命令
      • N在反方向重复上一次的搜索命令
      • n(N):来源于单词next
    • 注意:
      • 在/pattern之前先跳转到第一行进行全文件搜索
  • 文本替换:
    • %s/p1/p2/g将文件中所有的p1均用p2替换
    • %s/p1/p2/gc替换时需要确认
      • s:substitute替换
      • g:global全局
      • c:config确认
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值