君玉自牧 君玉自牧
首页
  • Linux
  • Nginx
  • MySQL
  • Redis
  • Kafka
  • Docker
  • Jenkins
  • Oneindex
  • Bitwarden
  • Confluence
  • Photogallery
  • 智能手机
  • 上古卷轴
  • 健身记录
  • 站点相关
  • 未完待续
GitHub (opens new window)
首页
  • Linux
  • Nginx
  • MySQL
  • Redis
  • Kafka
  • Docker
  • Jenkins
  • Oneindex
  • Bitwarden
  • Confluence
  • Photogallery
  • 智能手机
  • 上古卷轴
  • 健身记录
  • 站点相关
  • 未完待续
GitHub (opens new window)
  • 技术架构

  • 桌面维护

  • 网络工程

  • 系统运维

    • Linux

      • CentOS 初始化 & 环境准备
      • Linux SSH 服务 & 免密登录
      • Linux 用户权限 & 防火墙
      • Linux 磁盘挂载及交换分区
      • Linux 编辑器:vi & vim
        • 下载安装
        • 常规模式
          • 插入命令
          • 粘贴拷贝
          • 移动光标
          • Undo/Redo
          • 操作文件
          • 重复命令
        • 进阶操作
          • 块操作
          • 自动提示
          • 宏录制
          • 可视化选择
          • 分屏:split和vsplit
        • 其他资料
      • Linux 软件包管理
      • Linix 文件共享:FTP、NFS、Samba
      • Linux 定时任务:crontab
      • Linux 系统日志基本管理
      • Linux 系统 Shell 命令
      • 使用 nohup 启动守护进程
      • 使用 pm2 启动守护进程
      • 使用 Ansible 自动化运维
      • 使用 Puppet 自动化运维
    • Apache

    • Nginx

    • MySQL

    • Redis

    • MQ

    • ELK

    • Nacos

    • PostgreSQL

    • MongoDB

  • 环境搭建

  • 容器编排

  • 持续集成

  • 监控告警

  • 项目实践

  • 脚本开发

  • 前端开发

  • 后端开发

  • 效率工具

目录

Linux 编辑器:vi & vim

https://www.vim.org/download.php (opens new window) 对于运维来说,很少能碰见没有装 Vim 或 Vi 编辑器的Linux 系统;为了方便截图且不影响服务器,以下在 Windows 系统下载 gVim 编辑器进行操作。

# 下载安装

下载安装就不细说,启动 Vim 后,vim 在 Normal 模式下,按i进入 Insert(下称输入)模式 ,左下角会有个“--插入--”或“--insert--”字样,然后就可以输入字符了。
image.png

按ESC键返回 Normal(下称常规)模式,掌握如下简单命令就可以初步编辑文本了:

  • x->删除当前光标的字符
  • dd->删除光标所在行并存到剪贴板
  • p->粘贴剪贴板
  • :wq->存盘并退出(:w存盘、:q退出)

PS.常规模式下,所有的键都是功能键;而以:开头的的命令需要按回车Enter键才能生效。

# 常规模式

如果不确定是否回到常规模式吗,多按几次 ESC 键即可。

# 插入命令

  • a->在光标后插入
  • o->在当前行后插入一个新行
  • O->在当前行前插入一个新行
  • cw->替换从光标所在位置后到一个单词结尾的字符

# 粘贴拷贝

  • yy->拷贝当前行
  • p/P->粘贴(p 粘贴到当前位置之后,P 粘贴到当前位置之前)

# 移动光标

  • 0->数字零,到当前行行首
  • ^->到当前行第一个不是 blank 字符(空格、tab、换行、回车等)的位置
  • $->到当前行行尾
  • g_->到当前行最后一个不是 blank 字符的位置
  • /p->搜索“p”的字符串,按n下一个
  • :n、nG->到第 n 行
  • gg->到第一行
  • G->到最后一行
  • w->到下一个单词的开头
  • e->到下一个单词的结尾
  • %->匹配括号移动,包括 (、{、[(需要把光标先移到括号上)
  • *、#->匹配光标当前所在的单词,移动光标到下一个(或上一个)

PS.很多命令可以和移动命令联动,所以可以组合出很多类似于半自动的命令出来。

# Undo/Redo

  • u->undo
  • Ctrl+r->redo

# 操作文件

:e <path>->打开文件 :w->存盘 :saveas <path>->另存为 :wq、ZZ->保存并退出 :x 表示仅在需要时保存 :q!->退出不保存 :qa!->强行退出所有的正在编辑的文件 :bn、:bp->同时打开多个文件,切换下一个或上一个文件,:n也可以切换到下一个文件 J->把所有的行连接起来变成一行

# 重复命令

  • .->(小数点) 可以重复上一次的命令
  • N<command>->重复某个命令 N 次

# 进阶操作

# 块操作

块操作,典型的操作: 0``Ctrl+v``Ctrl+d``i-- ESC ^->到行头 Ctrl+v->开始块操作 Ctrl+d->向下移动 (你也可以使用hjkl来移动光标,或是使用%,或是别的) i-- [ESC]->i是插入,插入“--”,按 ESC 键来为每一行生效。 在 Windows 下的 gVim,需要使用Ctrl+p而不是Ctrl+v(热键冲突)

# 自动提示

在 Insert 模式下,你可以输入一个词的开头,然后按Ctrl+n``Ctrl+p

# 宏录制

q1操作序列q、@1、@@

  • q1->把你的操作记录在寄存器 a
  • @1->会 replay 被录制的宏
  • @@->用来 replay 最新录制的宏
q1YpCtrl+aq->
    q1->开始录制
    Yp->复制行.
    Ctrl+a->增加 1.
    q->停止录制.
@1->在 1 下面写下 2
@@->在 2 正面写下 3
100@@->创建新的 100 行,并把数据增加到 104
1
2
3
4
5
6
7
8

# 可视化选择

v、V、Ctrl+v可视列、行、块

# 分屏:split和vsplit

:split->创建分屏 :vsplit->创建垂直分屏 Ctrl+w_dir_->_dir_是方向,可以是hjkl或←↓↑→,切换分屏 Ctrl+w>_->最大化尺寸 (Ctrl+w | 垂直分屏) Ctrl+w>+、-->增加尺寸

# 其他资料

  • https://vim-adventures.com/ (opens new window)
  • https://github.com/dofy/learn-vim (opens new window)
网页编辑 (opens new window)
最近提交: 2023/03/22, 11:52:35
Linux 磁盘挂载及交换分区
Linux 软件包管理

← Linux 磁盘挂载及交换分区 Linux 软件包管理→

Theme by Vdoing | Copyright © 2011-2023 | 君玉自牧
粤ICP备15057965号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式