Linux04:(4.6k)vim编辑器

Linux_day04

一.vim编辑器

vim的三种模式
  • 命令模式

    不能对文件直接编辑,但可以通过快捷键删除行,复制,粘贴,移动光标等

  • 编辑模式-输入

  • 末行模式

    可以在末行输入命令:搜索,替换,保存,退出,撤销


vim打开文件的方式:

  • 1.#vim 文件路径——直接打开文件(光标会停在上次关闭文件时的位置)
  • 2.#vim +数字n 文件路径 ——打开文件,移动光标到n行

#vim +12 passwd
请添加图片描述

  • 3.#vim +/关键词 文件路径——打开文件,高亮显示关键词

#vim +/login passwd
请添加图片描述

  • 4.#vim 文件路径1 文件路径2 文件路径3 ——同时打开多个文件(默认显示第一个,按快捷键切换,后面讲)

vim关闭方法:

末行输入:q


普通用户切换到管理员
$su 然后输入密码


提醒:尝试对passwd文件进行修改练习时,不要直接修改,先拷贝一个到根目录,再进行练习操作

#cp /etc/passwd ~/

1.命令模式

vim打开文件默认就是命令模式

  • 移动光标

    • 移动到当前行首:^(或小键盘的0)

    • 移动到当前行尾:$

    • 移动到首行:gg

    • 移动到末行:G

    • 屏幕翻页:

      向上:pgup 或 ctrl+b(记忆backward)

      向下:pgdn 或 ctrl+f(记忆forward)

    • 快速移动到指定行:数字G

    • 以当前行为准,上下移动指定n行:n↑或n↓

    • 以当前位置为准,左右移动n个字符:n←或n→

    • 末行模式下:直接输入数字可以移动到指定行

滚动鼠标滚轮也可快速上下换行

(记忆备注:有数字一定放前面)


  • 复制

    • 复制光标所在一整行:yy

    • 以光标所在行为准(包含了当前行),向下复制指定的行数:数字yy

      (左下角会有提示复制了n行)

    • 可视化复制:先按ctrl+v,以光标为准,按↑↓←→选定复制区域,再按yy复制

  • 粘贴

    • 在想要粘贴的地方:p
  • 剪切/删除

    • 剪切/删除光标所在行:dd(下一行补位)
    • 删除/剪切多行:数字dd(下一行补位)
    • 删除/剪切所在行:D(不补位)

  • 选定文本块。使用v进入可视模式,移动光标键选定内容。

  • 复制的命令是y,即yank(抽出) ,常用的命令如下:

    y 在使用v模式选定了某一块的时候,复制选定块到缓冲区用;
    yy 复制整行(nyy或者yny ,复制n行,n为数字);
    y^ 复制当前到行头的内容;
    y$ 复制当前到行尾的内容;
    yw 复制一个word (nyw或者ynw,复制n个word,n为数字);
    yG 复制至档尾(nyG或者ynG,复制到第n行,例如1yG或者y1G,复制到档尾)

  • 剪切的命令是d,即delete
    d与y命令基本类似,所以两个命令用法一样,包括含有数字的用法.

    d 剪切选定块到缓冲区;
    dd 剪切整行
    d^ 剪切至行首
    d$ 剪切至行尾
    dw 剪切一个word
    dG 剪切至档尾

  1. 粘贴的命令式p,即paste(粘贴)
    p 小写p代表贴至游标后(下),因为游标是在具体字符的位置上,所以实际是在该字符的后面
    P 大写P代表贴至游标前(上)
    ————————————————
    摘自👇
    原文链接:https://blog.csdn.net/nmjhehe/article/details/81050789
  • 撤销恢复

    撤销:u (undo)

    恢复:ctrl+r


2.末行模式

输入冒号进入

  • 保存退出vim操作
    • 直接保存——输入:w
    • 另存为——输入:w 路径
    • 退出——输入:q
    • 保存并退出——输入:wq
    • 不保存强制退出——输入:q!
    • 比较推荐的保存退出指令——输入:x
    • 放弃所有修改,从上次保存文件开始再编辑——:e!

  • 调用外部命令(临时出来瞅一眼)——输入:!外部命令
    eg.——:!ls(之后按任意键回vim)

  • 查找
    • 查找——再vim中通过反斜杠/进入末行模式即——/关键词(高亮显示)
      eg.输入/sbin
      请添加图片描述

按n查看下一个,按N查看上一个(循环查)

取消高亮——输入nohl(hl表示highlight)


  • 替换(substitute)

    • : s/旧的关键词/新的内容 —— 只替换光标所在行的第一处符合条件的内容

    • : s/旧的关键词/新的内容g —— 替换光标所在行的全部符合条件的内容

    • :%s/旧的关键词/新的内容 ——替换整个文档中每一行中第一个符合条件的内容

    • :%s/旧的关键词/新的内容g——替换整个文档中全部符合条件的内容

      (注意此命令中没有空格,%表示整个文档g表示全局global

  • 临时显示行号——输入:set nu(隐藏行号 set nonu)
    如果想要永久显示行号,需要更改vim配置文件


模式之间的切换:

  • 命令模式——>末行模式:输入冒号:
  • 末行模式——>命令模式:1.按一次esc(延迟) 2.按两次esc(立即) 3.删掉冒号
  • 编辑模式——>命令模式:一次esc

vim同时打开多个文件后如何切换 :

  • 打开两个——#vim passwd password

  • 查看已打开的文件——输入:files

请添加图片描述
在%a的位置有2种显示可能:

%a:active的意思,表示当前处于显示的文件,或理解为活跃的

#:表示上一个打开的文件(切换文件后就会显示了)


  • 切换方式
    • 切换指定已经打开的vim文件——输入:open 文件名
    • 切换上一个:bp(back previous)
    • 切换下一个:bn(back next)
3.编辑模式
  • i——光标所在字符前开始插入(insert)
  • a——光标所在字符后开始插入(after)
  • 退出方式:一次esc

实用功能
  1. 代码着色

    默认是上色,去色——输入:syntax off(临时)

  2. vim中的临时计算器

    • 先进入编辑模式
    • 按ctrl+r当前位置变成“,再按=,光标会到最后一行,可以输入计算表达式

扩展内容
1.vim的配置文件

更改vim的配置有三种形式:

a. 临时修改,在文件打开时,在末行模式下输入的配置

b.修改用户的个人vim配置文件(位置在对应用户的家目录下~/.vimrc

​如果没有可以自行新建——注意要加.点(隐藏文件)

vim打开此文件,写入一些设置
如:默认显示行号 set nu ;显示不着色 syntax off

c.全局配置文件(vim自带,位置在/etc/vimrc,一般不要修改)

当既有个人配置文件又有全局配置文件时,优先执行个人配置文件


2.异常退出问题

在编辑文件后,并没有正常保存退出(wq),而是遇到终端关闭或断电的情况后,再次打开该文件会出现如下提示
请添加图片描述

发现交换文件——.passwd.swp(在编辑过程中产生的临时文件,可以理解为备份)

将此文件删除后可以正常访问。

删除方式:

1.按要求,按D

2.按Q退回到命令行,用指令删除交换文件
#rm -vf .passwd.swp


3.别名机制

作用:给Linux已有的命令赋予新名字(原名仍然有效)

​ (比如windows命令行指令有cls清屏,但Linux命令行中没有cls,只有clear)

原理:依靠别名映射文件(其实就是写一个新的名字——调用原来的指令。需要在映射文件中把调用关系写清楚)

映射文件在当前用户的家目录下,是一个隐藏文件
~/.bashrc


步骤:

  1. 用vim 打开当前用户的映射文件

  2. 在注释信息——# User specific aliases and functions的下方添加自定义别名指令

格式:alias 别名=‘原命令’(严格遵守格式,不能多空格)

在这里插入图片描述
备注单词:alias n.别名;化名 adv.又被称为


  1. wq保存退出

  2. 重新登陆当前用户,才能生效(su更改用户,再切回来)


4.退出方式

vim中退出可以用:q(未操作)或:wq(已操作)

更合适的退出方法是:x(有操作就保存,没操作就直接退)

备注:
当一个文件没有修改时:
用:wq进行退出会更新文件修改时间
用:x退出不会更新文件修改时间

文件修改时间在计算机日志文件中会有体现,所以建议用:x

(vim中大写X不要乱用,末行输入:X作用是对文件加密,可以按ctrl+c撤销加密行为)


补充一些win10下的快捷键

锁屏:win+L

运行:win+R

文件资源管理器——我的电脑:win+E

设置:win+i

切换当前已开窗口:win+数字

收起当前所有窗口/恢复:win+D

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fortunate.F

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值