首页 > 系统相关 >Linux学习笔记——vim编辑器的使用

Linux学习笔记——vim编辑器的使用

时间:2025-01-21 14:57:45浏览次数:3  
标签:文件 ctrl 模式 vim 命令 编辑器 Linux 光标

sudo        提权命令,在没有权限执行的时候,在命令前面加上该命令就会使用root身份进行执行。注:输入密码时看不见密码,输入正确即可。

vi/vim命令:终端下编辑文件的首选工具。

三种模式:

1.命令模式:vim        文件名进入文件默认进入命令模式,不能编辑。后续按esc进入命令模式。   

2.插入模式:命令模式中输入i字符进入插入模式,这个模式中可以编辑文件

3.底行模式:按shift+:进入底行模式,这个模式中q!——强行不保存退出,wq——保存退出。

4.视图模式:   命令模式下输入v字符进入视图模式,这个模式中可以选中数据.进行复制粘贴拷贝等工作。

其他快捷操作(在命令模式下实现):

移动到行首:0

移动到行尾:$

屏幕滚动下:ctrl+f

屏幕滚动上:ctrl+b

zt        定位到屏幕顶端

zb        定位到屏幕底端

gg        移动到文件开头

G        定位到文件底端

:set        nu        显示出行号

编辑命令:

1.插入:        i 在光标当前插入        I 在光标行开头插入

2.附加:       a在光标后增加        A在光标行最后增加

3.新行:        o在光标下新起一行        O在光标上新起一行

4.删除:        x删除光标所在字符        X删除光标前面的字符

5.删除行:        dd删除光标所在的行        D从光标所在位置开始到行末尾

6.dd        剪切 一行        p        粘贴一行        yy        复制一行        u        撤销

查找与替换命令:

1.查找        在命令模式下使用“/”在其后面直接写需要查询的关键字,然后回车==》n/N用来查询

                        n从光标处向下寻找

                        N从光标处向上寻找

/\<printf\>        ==>严格匹zhi,仅当该单词进行高亮显示。

/print        ==>模糊匹配,只要包含该单词的都高亮显示。

2.替换        g/s1/s//s2/g

                将文件中所有的s1字符串都替换成s2,s1和s2可以使字母也可以是字符串。

                比如:g/print/s//PRINT/g,将当前文档中所有的小写print全部替换成大写print

3.其他常用操作:

        u撤销上次操作        . 重复刚才的操作

        ctrl+z  挂起        fg 恢复

        ctrl+n关键词补齐       

         “=”自动缩进(使用视图模式选中要缩进的部分)

        %高亮显示        

        :sp(:vsp)  文件名        横(纵)向窗口(分屏)

        ctrl+w        多窗口切换

        :set diff        显示不同(在两个窗口输入命令)

        :set nodiff        去掉显示不同语法

        :set nu        显示行号

4.保存退出命令:

        :wq        保存退出

        :q        不保存退出

        :x        保存退出

        :wq!        强制保存退出

        :q!        强制不保存退出

        :wq 目标文件存放位置        指定位置存放文件(一般放在家里)

自动框架:.vimrc 文件

使用方法:

1.将vimrc拷贝到虚拟机中

2.修改vimrc文件中的内容(用户,qq邮箱等个人信息)

3.将vimrc拷贝到家目录中

4.vim xxx.c        或者        vim xxx        可以带语法高亮操作文件

当使用vim命令编辑文件过程中按ctrl+z挂起退出编辑,系统会生成一个.为开头的临时文件,这时重新打开vim编辑器就无法正常使用。方法有以下两种:

1.在终端输入fg命令,重新进入退出的时的文件中,修改完成退出就行。(之前修改的依然存在)

2.直接使用rm命令删除临时文件。(之前修改的也会丢失)

标签:文件,ctrl,模式,vim,命令,编辑器,Linux,光标
From: https://blog.csdn.net/weixin_63033110/article/details/145164459

相关文章

  • Linux安装TensorFlow2.x
    首先注意:TensorFlow2.11开始就不支持Windows的GPU,若要在Windows下安装GPU版本的,只能安装2.10及以下的版本。下面是官网提示直接安装,直接安装的话是最新版本的:若要安装指定版本,使用命令:pipinstalltensorflow[and-cuda]==2.xx注意安装版本要和python版本以及cuDNN、CUDA版......
  • OpenEuler学习笔记(六):OpenEuler与其他Linux服务器的区别是什么?
    OpenEuler是一款基于Linux内核的开源服务器操作系统,与其他Linux服务器操作系统(如CentOS、UbuntuServer等)存在多方面的区别,主要体现在以下几个方面:一、社区与支持OpenEuler:由华为发起并开源,以华为为核心的技术团队提供强大的技术支持,社区也吸引了众多国内企业和开发者参......
  • 5款兼容Linux系统的国产办公软件,支持局域网环境使用
    近年来,随着国产化进程的加速和信创政策的推动,越来越多的办公软件开始兼容Linux内核系统,特别是满足局域网办公需求的工具备受关注。今天为大家介绍五款兼容Linux系统的国产办公软件,它们在数据安全、私有化部署以及跨平台支持上都表现出色,非常适合企业内网环境。 1、有度即时通......
  • Linux基本操作
    Linux基本指令一.ls指令语法:ls[选项][目录或文件] 功能:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。常用选项:-a列出目录下的所有文件,包括以.开头的隐含文件。-d将目录像文件一样显示,而不是显示其下的文件。如:ls–d指定目......
  • Linux 网络 序列化与反序列化~
    概念序列化(Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程。以下是关于序列化与反序列化的介绍:序列化:将对象的状态信息转换为可以存储或传输的格式,通常是字节序列或文本格式。反序列化:将序列化后的数据还原为原始对象或数据结构的过程。出现原因序列化......
  • nginx修改网站默认根目录及发布(linux、centos、ubuntu)openEuler软件源repo站点
    Nginx是一种高性能的HTTP和反向代理服务器,广泛用于网站的静态文件服务和负载均衡。在实际应用中,我们常常需要修改Nginx的默认根目录以满足特定的业务需求。本文将详细介绍在Linux、CentOS、Ubuntu和openEuler系统中如何修改Nginx的默认根目录,并设置一个软件源repo站......
  • 一文告诉你Linux下如何用C语言实现ini配置文件的解析和保存
    嵌入式项目开发中,会有很多功能模块需要频繁修改参数,Linux下我们可以通过ini格式的文件保存配置信息。本文通过开源库iniparser,详细讲解如何用C语言实现ini文件的参数解析和配置保存。本文代码实例获取方式见文末。一、ini文件1什么是ini文件INI(InitializationFile)文件是......
  • 国产编辑器EverEdit - 部分编辑
    1部分编辑1.1应用场景  在编辑部分重要文档时,为了防止改错重要数据,将编辑区域限制在一个很小的区域是个不错的主意。1.2使用方法步骤1:使用鼠标或键盘选择需要编辑的区域。步骤2:选择菜单编辑->部分编辑或使用快捷键Alt+]打开部分编辑功能。注:打开“部分编辑”......
  • linux系统安装vmware workstation
    linux系统安装vmwareworkstation1.下载vmwareworkstation2.安装vmwareworkstation(使用root用户)1.解压2.安装3.启动vmwareworkstation1.下载vmwareworkstation访问https://softwareupdate.vmware.com/cds/vmw-desktop/ws/17.6.2/24409262/linux/core/链接下载......
  • linux 将自定义程序做成服务开机自启动
    在linux系统中有很多方式可以将自定义程序设置成开机自启动,本文所述的方式是通过将程序设置成service来实现自启动。在/lib/systemd/system目录下新建hello.service文件touch/lib/systemd/system/hello.servicevim/lib/systemd/system/hello.service[Unit]Descrip......