首页 > 系统相关 >Linux 【基础篇-vim编辑器 网络配置 远程登录】

Linux 【基础篇-vim编辑器 网络配置 远程登录】

时间:2024-06-13 18:28:35浏览次数:16  
标签:字符 虚拟机 模式 vim 网卡 编辑器 虚拟 Linux 光标

02 【基础篇-vim编辑器 网络配置 远程登录】

1.vi和vim编辑器

1.1 vi和vim的基本介绍

  • 所有Linux系统都会内置vi文本编辑器
  • vim是vi的升级版,可以主动以字体颜色分辨语法的正确性,代码补完和编译,错误跳转等功能。

image-20220815123840409

1.2 vi和vim的三种模式

基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode)输入模式(Insert mode)底线命令模式(Last line mode)。 这三种模式的作用分别是:

1.2.1 正常模式
  • 用户刚刚启动 vi/vim,便进入了正常模式。

    此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。

    以下是常用的几个命令:

    • i 切换到输入模式,以输入字符。
    • x 删除当前光标所在处的字符。
    • : 切换到底线命令模式,以在最底一行输入命令。

若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。

命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。

1.2.2 插入/编辑模式
  • 在命令模式下按下i就进入了输入模式。

    在输入模式中,可以使用以下按键:

    • 字符按键以及Shift组合,输入字符
    • ENTER,回车键,换行
    • BACK SPACE,退格键,删除光标前一个字符
    • DEL,删除键,删除光标后一个字符
    • 方向键,在文本中移动光标
    • HOME/END,移动光标到行首/行尾
    • Page Up/Page Down,上/下翻页
    • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
    • ESC,退出输入模式,切换到命令模式
1.2.3 命令行模式
  • 在命令模式下按下:(英文冒号)就进入了底线命令模式。

    底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。

    在底线命令模式中,基本的命令有(已经省略了冒号):

    • q 退出程序
    • w 保存文件

    按ESC键可随时退出底线命令模式。

1.2.4 三种模式转换示意图

3.2vim模式转换.jpg

1.3 vi/vim 使用实例

使用 vi/vim 进入一般模式

如果你想要使用 vi 来建立一个名为 runoob.txt 的文件时,你可以这样做:

$ vim runoob.txt

直接输入 vi 文件名 就能够进入 vi 的一般模式了。请注意,记得 vi 后面一定要加文件名,不管该文件存在与否!

image-20220815124239030

按下 i 进入输入模式(也称为编辑模式),开始编辑文字

在一般模式之中,只要按下 i, o, a 等字符就可以进入输入模式了!

在编辑模式当中,你可以发现在左下角状态栏中会出现 –INSERT- 的字样,那就是可以输入任意字符的提示。

这个时候,键盘上除了 Esc 这个按键之外,其他的按键都可以视作为一般的输入按钮了,所以你可以进行任何的编辑。

image-20220815124308987

按下 ESC 按钮回到一般模式

好了,假设我已经按照上面的样式给他编辑完毕了,那么应该要如何退出呢?是的!没错!就是给他按下 Esc 这个按钮即可!马上你就会发现画面左下角的 – INSERT – 不见了!

在一般模式中按下 :wq 储存后离开 vi

OK,我们要存档了,存盘并离开的指令很简单,输入 :wq 即可保存离开!

1.4 Vim 按键说明

除了上面简易范例的 i, Esc, :wq 之外,其实 vim 还有非常多的按键可以使用。

1.4.1 一般模式的光标移动、搜索替换、复制粘贴
移动光标的方法
h 或 向左箭头键(←)光标向左移动一个字符
j 或 向下箭头键(↓)光标向下移动一个字符
k 或 向上箭头键(↑)光标向上移动一个字符
l 或 向右箭头键(→)光标向右移动一个字符
[Ctrl] + [f]屏幕『向下』移动一页,相当于 [Page Down]按键 (常用)
[Ctrl] + [b]屏幕『向上』移动一页,相当于 [Page Up] 按键 (常用)
[Ctrl] + [d]屏幕『向下』移动半页
[Ctrl] + [u]屏幕『向上』移动半页
+光标移动到非空格符的下一行
-光标移动到非空格符的上一行
n<space>那个 n 表示『数字』,例如 20 。按下数字后再按空格键,光标会向右移动这一行的 n 个字符。例如 20<space> 则光标会向后面移动 20 个字符距离。
0 或功能键[Home]这是数字『 0 』:移动到这一行的最前面字符处 (常用)
$ 或功能键[End]移动到这一行的最后面字符处(常用)
H光标移动到这个屏幕的最上方那一行的第一个字符
M光标移动到这个屏幕的中央那一行的第一个字符
L光标移动到这个屏幕的最下方那一行的第一个字符
G移动到这个档案的最后一行(常用)
nGn 为数字。移动到这个档案的第 n 行。例如 20G 则会移动到这个档案的第 20 行(可配合 :set nu)
gg移动到这个档案的第一行,相当于 1G 啊! (常用)
n<Enter>n 为数字。光标向下移动 n 行(常用)
搜索
/word向光标之下寻找一个名称为 word 的字符串。例如要在档案内搜寻 vbird 这个字符串,就输入 /vbird 即可! (常用)
`?word向光标之上寻找一个字符串名称为 word 的字符串。
/^abc查找以 abc 为行首的行
/abc$查找以 abc 为行尾的行
n这个 n 是英文按键。代表重复前一个搜寻的动作。举例来说, 如果刚刚我们执行 /vbird 去向下搜寻 vbird 这个字符串,则按下 n 后,会向下继续搜寻下一个名称为 vbird 的字符串。如果是执行 ?vbird 的话,那么按下 n 则会向上继续搜寻名称为 vbird 的字符串!
N这个 N 是英文按键。与 n 刚好相反,为『反向』进行前一个搜寻动作。 例如 /vbird 后,按下 N 则表示『向上』搜寻 vbird 。

在查找过程中需要注意的是,要查找的字符串是严格区分大小写的,如查找 “shenchao” 和 “ShenChao” 会得到不同的结果。

如果想忽略大小写,则输入命令 “:set ic”;调整回来输入":set noic"。

如果在字符串中出现特殊符号,则需要加上转义字符 “”。常见的特殊符号有 \、*、?、$ 等。如果出现这些字符,例如,要查找字符串 “10$”,则需要在命令模式中输入 “/10$”。

替换文本功能描述
r替换光标所在位置的字符
R从光标所在位置开始替换字符,其输入内容会覆盖掉后面等长的文本内容,按“Esc”可以结束

标签:字符,虚拟机,模式,vim,网卡,编辑器,虚拟,Linux,光标
From: https://blog.csdn.net/liufang_imei/article/details/139449450

相关文章

  • linux用户及用户组管理,目录或文件权限管理
    在Linux系统中,用户及用户组管理,以及目录或文件权限管理是系统管理员的基本任务。以下是一些基本和常用的操作指南。一、用户和用户组管理添加用户1.添加用户sudoadduserusername这条命令会创建一个新的用户,并为该用户创建一个主目录,并提示你设置密码及其他信息。2.为......
  • linux部署nginx
    1.情景展示在linux下,使用nginx代理前端代码,如何实现?2.nginx下载下载地址:https://nginx.org/en/download.html下载成功后,将其解压到linux服务器上。(可以通过Xftp实现)3.安装nginx通常安装在usr/local目录下。打开Xshell,切换到nginx-1.26.0.tar.gz所在目录。cd/usr/loca......
  • Linux系统的mysql如何导出表数据
    在Linux系统上,我们可以使用mysqldump命令来导出MySQL数据库中的表数据。mysqldump是一个用于备份数据库的命令行工具,它可以将整个数据库或特定的表导出为SQL脚本文件,以便在其他环境中恢复或迁移数据。本文将介绍如何使用mysqldump命令导出表数据,并提供相关的代码示例和流程图。1......
  • linux 下MySQL命令行导出csv文件格式
    从数据库服务器导出1、登录mysqlmysql-uroot-p2、切换数据库usedatabase3、导出文件命令SELECTid,column1,column2FROMtableINTOOUTFILE'/tmp/mysqlfiles/table.csv'FIELDSTERMINATEDBY','ENCLOSEDBY'"'LINESTERMINATEDBY'n' sel......
  • 每天学一个 Linux 命令(8):ls
    Github地址:https://github.com/mingongge/Learn-a-Linux-command-every-day命令简介ls(list),ls命令显示指定目录下的内容,列出指定目录下所含的文件及子目录。此命令与Windows系统中dir命令功能相似。ls命令的输出信息可以进行彩色加亮显示,以分区不同类型的文件。语法格......
  • Linux时间子系统1:gettimeofday和clock_gettime实现分析
    1.Linux用户态获取时间的函数a.秒级别的时间函数:time和stimetime和stime函数的定义如下:#include<time.h>time_ttime(time_t*t);intstime(time_t*t);        time函数返回了当前时间点到linuxepoch的秒数(内核中timekeeper模块保存了这个值,timekeeper->x......
  • linux下pyenv的安装和使用
    pyenv可以根据需求使用户在系统里安装和管理多个Python版本:配置当前用户的python的版本配置当前shell的python版本配置某个项目(目录及子目录)的python版本配置多个虚拟环境 一、安装pyenv1、安装pyenvcurl-Lhttps://github.com/pyenv/pyenv-installer/raw/master......
  • Linux上12个最佳开源ChatGPT替代方案
    ​ChatGPT是OpenAI开发的流行聊天机器人和虚拟助手,自2022年11月30日起上市。此图表模型可让您对对话进行微调并引导其达到理想的持续时间、结构、语气、细节程度和语言。幸运的是,随着人工智能的不断进步,开源ChartGPT替代品已经成为强大的工具,可以提供相同的对话技巧以及定......
  • linux清理缓存
    当cache缓存占用太大,服务起不来,需要查看清理缓存执行free-m或者free-h,查看缓存释放缓存区内存的方法(请注意,以下操作需要root权限)建议在清理缓存之前先备份重要数据,以免发生意外情况。1、清理磁盘缓存刷新文件系统缓存,将缓存中的数据写入磁盘。sync清理页缓存。这将清......
  • DevExpress WPF中文教程:Grid - 如何完成列和编辑器配置(设计时)?
    DevExpressWPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpressWPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。无论是Office办公软件的衍伸产品,还是以数据为中心......