Linux课程四课---Linux开发环境的使用(vim编辑器的相关)

作者前言

🎂 ✨✨✨✨✨✨🍧🍧🍧🍧🍧🍧🍧🎂
​🎂 作者介绍: 🎂🎂
🎂 🎉🎉🎉🎉🎉🎉🎉 🎂
🎂作者id:老秦包你会, 🎂
简单介绍:🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂
喜欢学习C语言、C++和python等编程语言,是一位爱分享的博主,有兴趣的小可爱可以来互讨 🎂🎂🎂🎂🎂🎂🎂🎂
🎂个人主页::小小页面🎂
🎂gitee页面:秦大大🎂
🎂🎂🎂🎂🎂🎂🎂🎂
🎂 一个爱分享的小博主 欢迎小可爱们前来借鉴🎂


工具的使用

  • **作者前言**
  • vim
    • vim的简单介绍
    • vim的模式
    • vim编辑器的相关命令
    • 替换模式
    • 批量注释
    • 底行模式
    • vim的配置
      • 进行vim文件的配置
  • sudo命令的解决

vim

vim的简单介绍

vim是一款多模式的编辑器, 其中vim里面有很大子命令,让我们进行编写操作

vim的模式

在这里插入图片描述
需要注意的是我们要切换成底层模式,有三种模式 q(退出)、q!(强制退出), w(保存), wq(保存并退出)
使用这个模式可能会出现的案例:
在这里插入图片描述
出现这个案例的原因就是,由于我们因为某些原因然后没来得及保存文件,vim编辑器就会默认生成一个文件
在这里插入图片描述
这个文件的后缀就是.swp文件,也就是上次我们操作的没来得及保存的内容,
下面几种选项
在这里插入图片描述
【O】:只读
【E】:编辑
【R】:覆盖
【D】:删除(也就是删除.swp文件)
【Q】:退出

vim编辑器的相关命令

命令模式
shift + $:光标定位到当前行的最后结尾处
shift + ^:光标定位在当前的 最左侧开头处
shift + g:定位到最后面
gg : 定位到文本的开头
数字+ shift + g: 定位到第几行
h:左
j:下
k:上
l:右
yy:复制当前行
数字+yy:复制多少行(当前行为开始的第一行)
p:粘贴
数字+p:粘贴多行
u:撤销
Ctrl + r: 对错误的撤销进行撤销
dd:剪切
shift + ~:小写转大写或者大写转小写
p + 要替换的字符: 替换当前光标所在的字符
数字 + x : 删除往后几个字符
数字+ shift + x:往前删除几个字符
w:按照一个单词为单位的往移动光标
b:按照一个单词为单位往移动光标
shift + #: 标明出我们要查找的函数
shift + zz:保存并退出vim

替换模式

还可以进入一个新模式
shift + r 或者R
在这里插入图片描述
ESC退回到命令模式

批量注释

第一步先把光标移到要注释的内容上,然后ctrl + v
第二步,移动光标选中要注释的内容
第三步 shift + i
第四步 //
第五步就是ESC

如果是把注释去掉
第一步: ctrl +v
第二步选择要去除的注释内容
第三步 d

底行模式

q: 退出
q!:强制退出
w:保存
wq:保存退出
wq!:强制保存退出
!+ Linux指令:
如果我们想要不退出vim但是又想进行Linux的一些操作比如ls 、gcc等操作我们可以这样
在这里插入图片描述
底行模式下我们可以先写!+ Linux指令
如: !+ls 、!+ cat test,txt…等一系列的写法
不使用!
如果是使用vs +文件名 :就是创建 文件
vs code.c

在这里插入图片描述
如图:如果我们退出,退出的是拥有光标的文件,如果要把光标移动到其他文件里面去,就要
ctrl + ww :移动光标

行号: set nu
取消行号 : set nonu

vim的配置

如果我们在Linux要有自己的家目录,这样进行vim配置就会很方便,在正常的用户中,vim是配置不完全的,需要我们自己去完善,我们就需要创建一个文件,这个文件就是 .vimrc,当我们配置好后,每次使用vim就会在家目录自动调用这个文件,这个文件就是vim的配置文件
而root也有自己的vim配置文件,这个文件在/etc/vimrc

在这里插入图片描述
在家目录在进行创建vim配置文件
在这里插入图片描述

root的配置文件(对所有用户生效)
在这里插入图片描述

进行vim文件的配置

这里我建议下载网上的vim配置文件,本人就是直接下载这个

wget  https://files.cnblogs.com/ma6174/vimrc.zipunzip  -f  vimrc.zip  -d  ~/

或者我们可以在gitee上搜索vimforcpp也可以找到vim配置文件

sudo命令的解决

我们在一些新用户的时候无法使用sudozheg 指令是因为我们没有进行配置
首先我们要先切换到root用户中,找到 /etx/sudoers文件,然后更改一下配置

在这里插入图片描述
然后我们切换到普通用户进行使用sudo命令,看看是否成功

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

图神经网络实战——图论

图神经网络实战——图论 0. 前言1. 图属性1.1 有向图和无向图1.2 加权图与非加权图1.3 连通图非连通图1.4 其它图类型 2. 图概念2.1 基本对象2.2 图的度量指标2.2 邻接矩阵表示法 3. 图算法3.1 广度优先搜索3.2 深度优先搜索 小结系列链接 0. 前言 图论 (Graph theory) 是数学…

c#使用log4net的3种调用方法

https://blog.csdn.net/summer_top/article/details/107961245 第一步:下载log4net。 右键项目引用,进入管理NuGet包。 搜索log4net,下载安装。 第二步:创建LogHelper类。 public class LogHelper { private LogHelp…

创新指南|针对小型企业的 8 个最佳营销和品牌推广技巧

仅在美国就有超过 3000 万家小型企业,因此开发有效的营销和品牌建设以在竞争中脱颖而出比以往任何时候都更加重要。实施低成本但具有战略意义的技巧可以帮助任何小型企业吸引客户并增加收入。本文将为寻求提高品牌知名度和提高销售额的小企业主提供可行的营销和品牌…

92. 递归实现指数型枚举 刷题笔记

思路 dfs 考虑选或者不选每个位置 用0表示未考虑 1表示选 2表示不选 用u表示搜索状态 u>n时 已经搜到底层了 需要输出当前方案 遍历 如果选了则输出 #include<iostream> using namespace std; int n; const int N16; int st[N]; void dfs(int u){ //u来记…

Google发布Genie硬杠Sora:通过大量无监督视频训练最终生成可交互虚拟世界

前言 Sora 问世才不到两个星期&#xff0c;谷歌的世界模型也来了&#xff0c;能力看似更强大(嗯&#xff0c;看似)&#xff1a;它生成的虚拟世界自主可控 第一部分 首个基础世界模型Genie 1.1 Genie是什么 Genie是第一个以无监督方式从未标记的互联网视频中训练的生成式交互…

Redis冲冲冲——事务支持,AOF和RDB持久化

目录 引出Redis事务支持&#xff0c;AOF和RDB持久化1、Redis的事务支持2、Redis的持久化 Redis冲冲冲——缓存三兄弟&#xff1a;缓存击穿、穿透、雪崩缓存击穿缓存穿透缓存雪崩 总结 引出 Redis冲冲冲——事务支持&#xff0c;AOF和RDB持久化 Redis事务支持&#xff0c;AOF和…

【C语言】【洛谷】B2073 求小数的某一位

题目&#xff1a; 分析&#xff1a; 一开始想到两种方式&#xff1a;(a*pow(10,n) / b)%10&#xff0c; (a/b&#xff09;*pow(10,n) 再对10取余数&#xff08;中间有类型转换&#xff09;。 随后分析提交记录中的正确题解&#xff0c;得出了以下思路&#xff1a;小数点后第n位…

【mysql版本修改】

1、使用telnet确认当前mysql版本号 telnet <MySQL服务器IP地址> <MySQL端口号> telnet 192.168.38.20 33062、使用strings查看/usr/sbin/mysqld中包含版本号的字符串 # 查看/usr/sbin/mysqld文件中是否包含对应的版本号 strings /usr/sbin/mysqld | grep 5.7.30 …

ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘无密码如何解决

1.修改my.cnf配置文件 &#xff08;1&#xff09;找到my.cnf位置&#xff0c;在[mysqld]下面添加skip-grant-tables cd / vim /etc/my.cnf &#xff08;2&#xff09;添加完成后保存&#xff0c;并重启mysql服务 按下esc 输入:wq 执行 servcie mysqld restart 2.进入mysql数据…

el-table通过这样封装可以实现校验-表格校验的原理

我们一般在后台系统中&#xff0c;很常见的操作时表格里面嵌套表单&#xff0c;之前我的网上找到了一些封装的用法&#xff1a; <el-form :model"formData" :rules"ruleData" ref"formDom"><el-table :data"formData.tableData&q…

5G提速工业物联网发展

对于普通消费者来说&#xff0c;5G的概念可能就是更快的网速&#xff0c;5G带来的上网体验提升是最直观的&#xff0c;因为拿手机可以实时观看高清晰度的视频&#xff0c;且无需太久的等待时间。 而更低的时延与更高的可靠性对C端用户带来的体验改善&#xff0c;相对来说就小很…

【Linux深入剖析】再续环境变量 | 进程地址空间

&#x1f4d9; 作者简介 &#xff1a;RO-BERRY &#x1f4d7; 学习方向&#xff1a;致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 &#x1f4d2; 日后方向 : 偏向于CPP开发以及大数据方向&#xff0c;欢迎各位关注&#xff0c;谢谢各位的支持 目录 1.环境变量再续1.1 和…