Linux---vim的使用

news2024/11/18 19:36:08

专栏:Linux
个人主页:HaiFan.
本章为大家带来Linux工具—vim

Linux工具

  • 关于rzsz
  • yum
  • vim的基本概念
  • vim的基本操作
  • vim正常模式命令集
  • vim末行模式命令集
  • 简单vim配置
    • 配置文件的位置
    • 常用配置选项

关于rzsz

这个工具用于windows机器和Linux机器通过Xshell传输文件,安装完毕之后可以通过拖拽方式将文件上传过去。

可以通过拖拽的方式,将windows中的文件传到Linux中

通过输入 sz 文件的方式,可以将Linux中的文件上传到windows中。

在这里插入图片描述

yum

要在Linux上下载东西,可以通过yum指令,它可以自动下载、安装和升级软件包,还可以自动解决依赖关系。使用yum可以很方便地管理Linux系统上的软件包。

使用的时候要是root用户或者在普通用户下输入指令前加上sudo进行提权。

在这里插入图片描述

直到最后出现complete,表示下载 完成。

卸载的话就是 yum remove 要卸载的软件的名字

vim的基本概念

vim的三种模式(有很多模式,暂时只掌握三种即可),1. 命令模式(command mode)2. 插入模式(insert mode) 3. 底行模式(last line mode),

  • 正常/普通/命令模式(Normal mode)

控制屏幕光标的移动,字符,字或行的删除,也可以复制某段内容

  • 插入模式(insert mode)

只有在insert mode下,才可以做文字输入

  • 末行模式(last line mode)

文件保存或者退出,也可以进行文件替换,查找字符串,列出行号等操作

vim的基本操作

  • 进入vim:vim 后跟文件名,然后就会进入vim全屏编辑的画面

如 vim test.c

在进入文件的时候,是默认处于正常模式,要切换到插入模式后才能正常输入内容

  • 正常模式切换为插入模式

输入a

输入i

输入o

  • 插入模式切换为正常模式

当处于插入模式,就只能一直输入文字,按esc键,也就是键盘左上角的那一个,可以回到正常模式

  • 正常模式切换为末行模式

shift + ;也就是:

  • 退出vim及保存文件,在正常模式下,按一下:进入last line mode

:w —保存当前文件

:wq—保存并退出

:q—退出但不保存

:q!—强制退出并不保存输入的内容

:wq!—强制退出并保存内容

vim正常模式命令集

  • 插入模式

    按i进入插入模式,按i进入插入模式后是从光标当前位置开始输入内容

    按a进入插入模式后,是从目前光标所在位置的下一个位置开始输入内容

    按0进入插入模式后,是插入新的一行,从行首开始输入文字

  • 移动光标

vim可以直接用键盘上的光标来上下左右移动

按「G」:移动到文章的最后

按「 $ 」:移动到光标所在行的“行尾”

按「^」:移动到光标所在行的“行首”

按「w」:光标跳到下个字的开头

按「e」:光标跳到下个字的字尾

按「b」:光标回到上个字的开头

按「#l」:光标移到该行的第#个位置

按[gg]:进入到文本开始

按[shift+g]:进入文本末端

按「ctrl」+「b」:屏幕往“后”移动一页

按「ctrl」+「f」:屏幕往“前”移动一页

按「ctrl」+「u」:屏幕往“后”移动半页

按「ctrl」+「d」:屏幕往“前”移动半页

  • 删除文字

「x」:每按一次,删除光标所在位置的一个字符

「#x」:例如,「6x」表示删除光标所在位置的“后面(包含自己在内)”6个字符

「X」:大写的X,每按一次,删除光标所在位置的“前面”一个字符

「#X」:例如,「20X」表示删除光标所在位置的“前面”20个字符

「dd」:删除光标所在行

「#dd」:从光标所在行开始删除#行

  • 复制

「yw」:将光标所在之处到字尾的字符复制到缓冲区中。

「#yw」:复制#个字到缓冲区

「yy」:复制光标所在行到缓冲区。

「#yy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。

「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完
成复制与粘贴功能。

  • 替换

「r」:替换光标所在处的字符。

「R」:替换光标所到之处的字符,直到按下「ESC」键为止。

  • 撤销上一次操作

「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次“u”可以执行多次回
复。

「ctrl + r」: 撤销的恢复

  • 更改

「cw」:更改光标所在处的字到字尾处

「c#w」:例如,「c3w」表示更改3个字

  • 跳至指定的行

「ctrl」+「g」列出光标所在行的行号。

「#G」:例如,「15G」,表示移动光标至文章的第15行行首

vim末行模式命令集

  • 列出行号

「set nu」: 输入「set nu」后,会在文件中的每一行前面列出行号

  • 跳转到文件中的某一行

:+数字:先输入一个:在输入数字,按回车,就会跳到改行

  • 查找字符

/+关键字:先按/在输入要查找的字符

简单vim配置

直接vim hello.cpp 之后,会出现一个黑框框,没有行号的显示,没有语法高亮,缩进也没有,写代码的时候就很难受。

Linux可以配置vim

配置文件的位置

在目录etc下面,有个名为 .vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。

而在每个用户的主目录下,都可以建立自己的私有配置文件,只在自己的用户下生效,不会影响到其他用户,命名为: .vimrc

然后执行 vim .vimrc

常用配置选项

  • 语法高亮:syntax on
  • 显示行号:set nu
  • 设置缩进的空格数为2:set shiftwidth=4
  • 高亮当前行:set cursorline
  • 等等

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/641614.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

字符串--字符指针、字符串的访问和输入/输出(字符串空格问题,输入带双引号的字符串)

一、字符指针 字符指针(Character Pointers)是指向字符型数据的指针变量。 每个字符串在内存中都占用一段连续的存储空间,并有唯一确定的首地址。因此,只要将字符串的首地址赋值给字符指针,即可让字符指针指向一个字符…

安卓主板/开发板定制开发生产,MTK/高通/紫光展锐安卓开发板

智物通讯是一家致力于行业安卓主板定制开发的公司,提供包括MTK四核/八核方案、MTK、高通、紫光展锐系列行业主板方案定制等多样化的服务。 用户可以根据实际需求选择各种不同的模块类型,包括4G模块和5G模块。其中4G模块方案有MT6761、MT6762、MT6765、M…

爬虫 python 正则匹配 保存网页图片

目录 1. 简介1.1 爬虫1.2 爬虫语言1.3 python库1.4 我的步骤 2. 导入包2.1 代码2.2 requests库 3. 写入文件函数4. 获取图片5. 主函数5.1 代码5.2 说明一下webbrowser 6. 所有代码7. 其他(可以忽略)8. 总结 在这里我只提供的是一种方法,有很多…

webpack生产模式配置

一、生产模式和开发模式介绍 生成模式(production mode)是指在开发完成后将代码部署到生产环境中运行的模式,通常需要进行代码压缩、优化、合并,以减少文件大小和请求次数,提高页面加载速度和运行效率。 开发模式&am…

Android12 系统开发记录-迅为RK3588使用ADB工具

ADB 英文名叫 Android debug bridge ,是 Android SDK 里面的一个工具,用这个工具可以 操作管理 Android 模拟器或者真实的 Android 设备,主要的功能如下所示:  在 Android 设备上运行 shell 终端,用命令行操作 …

How to fix the NHS 如何改革英国的国民医疗保险制度 | 经济学人20230527版社论双语精翻

他山之石:2023年5月27日《经济学人》社论(Leaders)精选:《如何改革英国的国民医疗保险制度》(“How to fix the NHS”) Leaders | The sick factor 社论 | 致病因素 How to fix the NHS 如何改革英国的国民…

软件安装mysql

1系统约定 安装文件下载目录:/data/softwareMysql目录安装位置:/usr/local/mysql数据库保存位置:/data/mysql日志保存位置:/data/log/mysql 2下载mysql 在官网:MySQL :: Download MySQL Community Server 中&#x…

Guitar Pro8.0.1最新中文版本吉他谱下载及使用教程

许多人都对吉他这个乐器很感兴趣,因为吉他的学习成本较低,学习难度较小,即便是零基础的小白通过短期的学习也能掌握基本的技巧。但实际上,学习吉他还需要认识吉他谱,识谱是每个吉他爱好者都必须掌握的技能,…

数字孪生世界建设核心能力:物理世界感知能力

中国信通院在《数字孪生城市白皮书(2022年)》中指出,数字孪生城市技术集成性高,核心板块日渐清晰,当前已逐步深入到城市全要素表达、业务预警预测、场景仿真推演、态势感知只能决策等多个环节。数字孪生技术的向前发展…

Yum update和upgrade的区别

Yum update和upgrade的区别 Linux yum中package升级命令有两个分别是 yum upgrade 和 yum update 1、区别 默认情况下,yum update和yum upgrade的功能是完全一样的,都是将需要更新的package(这里的包包括常规的包、软件、系统版本、系统内核)更新至软件…

如何使用ArcGIS加载历史影像

历史影像对研究地物的变化可以产生很直观的效果,Esri提供了在线浏览的历史影像,这里给大家介绍一下如何将这个历史影像加载到ArcGIS,希望能对你有所帮助。 获取地图链接 打开地图网站(https://livingatlas.arcgis.com/wayback/&a…

【MySQL】复合查询(重点)

🏠 大家好,我是 兔7 ,一位努力学习C的博主~💬 🍑 如果文章知识点有错误的地方,请指正!和大家一起学习,一起进步👀 🚀 如有不懂,可以随时向我提问&…

实验篇(7.2) 13. 创建点对点安全隧道 (二)(FortiGate-IPsec) ❀ 远程访问

【简介】上一篇实验发现,两端都是可以远程的公网IP的话,两端防火墙都可以发出连接请求,并且都能够连通。这样的好处是安全隧道不用随时在线,只在有需求时才由发起方进行连接。但是现实中很多情况下只有一端公网IP可以远程&#xf…

番外篇 离线服务器环境配置与安装

(离线远程服务器的Anaconda安装与卸载torch的安装与卸载) 我参考或百度一些博主发的经验贴关于Anaconda的安装与卸载等教程,但实际情况是每一个服务器遇到的问题多多少少总有不一样的地方,虽然可以借鉴,但不能完全照搬…

常见Visual Studio Code 快捷键

一,文件与窗口快捷键: 1.打开一个新窗口: CtrlShiftN 2.关闭窗口: CtrlShiftW 3.文件切换:CtrlTab 4.快速打开文件:CtrlP 5.新建文件: CtrlN 6.切换侧边栏:CtrlB 7.选中单个文…

JWT代码实现

什么是 JWT? JSON Web Token,通过数字签名的方式,以 JSON 对象为载体,在不同的服务终端之间安全的传输信 息。(将信息进行封装,以 JSON 的形式传递) JWT 有什么用? JWT 最常见的场景就是授权认证,一旦用户…

web3.0 爆红是炒作还是真有赚头?

前言 最近两年虽然疫情肆虐全球,虽然困得住人们的脚步,但是困不住科技的发展趋势,前有元宇宙,后有 web3.0,新的热点一个接着一个的出现,技术革新也是越来越快,之前只能在科幻电影、科幻小说中出…

SIFT算法

文章目录 1. SIFT算法简介1.1 SIFT特征检测步骤1.2 SIFT算法的特点 2. SIFT算法原理2.1 尺度空间2.1.1 多分辨率金字塔2.1.2 高斯金字塔2.1.3 高斯尺度空间(使用不同的参数) 2.2 DoG空间极值检测(查找关键点)2.3 删除不好的极值点…

二、Kafka生产与消费全流程

Kafka生产与消费全流程 Kafka是一款消息中间件,消息中间件本质就是收消息与发消息,所以这节课我们会从一条消息开始生产出发,去了解生产端的运行流程,然后简单的了解一下broker的存储流程,最后这条消息是如何被消费者…

JVM笔记(一)

走进JVM JVM相对于Java应用层的学习难度更大,**开篇推荐掌握的预备知识:**C/C(关键)、微机原理与接口技术、计算机组成原理、操作系统、数据结构与算法、编译原理(不推荐刚学完JavaSE的同学学习),如果没有掌握推荐的一…