vi 显示行号的设置 跳转行

vi 显示行号的设置 跳转行显示行号仅本次编辑过程有效按 ESC 切换到命令模式 commandmode 然后输入以下 setnumber 显示行号 setnonumber 取消行号以上方法只针对于本次的编辑过程有效 也就是说下次打开别的文件 本文件 行号依旧默认是不显示的 如果想每次使用 vi 编辑文件 都显示行号 那么就需要编辑 vi 的配置文件 中的默认设置 一直有效分为两个级别 所有用户的配置

显示行号

  • 仅本次编辑过程有效
    ESC切换到命令模式command mode,然后输入以下:
    :set number 显示行号
    :set nonumber 取消行号






以上方法只针对于本次的编辑过程有效。也就是说下次打开别的文件/本文件,行号依旧默认是不显示的。

如果想每次使用vi编辑文件,都显示行号,那么就需要编辑vi的配置文件(中的默认设置)。

  • 一直有效
    分为两个级别:
    • 所有用户的配置


wuyujin@ubuntu18:~$ ll /etc | grep vi -rw-r--r-- 1 root root 96 2月 10 2019 environment -rw-r--r-- 1 root root 19K 12月 26 2016 services drwxr-xr-x 2 root root 4.0K 4月 5 11:15 vim/ wuyujin@ubuntu18:~$ ll /etc/vim | grep vi -rw-r--r-- 1 root root 2.5K 4月 5 11:15 vimrc -rw-r--r-- 1 root root 662 4月 11 2018 vimrc.tiny wuyujin@ubuntu18:~$ 

可以看到,/etc/vim/vimrc就是所有用户的vim运行的配置。

- 仅本用户的配置 

针对于所有用户通用的配置在/etc/目录下,
而只针对当前用户的配置在~/目录下,如/home/wuyujin/.vimrc

修改配置后,要生效,要么重启。要么执行source 配置文件全路径,重新读取/执行该配置文件即可。

跳转行号

  • 打开文件时就指定行号
    其实使用vi打开文件的时候就可以执行行号:vi 文件名 +n,其中n就是行号,
    vi ~/someText +10就会打开someText这个文件,并定位光标在第10行。
    如果n的值大于文件的最大行数,会定位光标到文件的最后一行。






  • 编辑的时候跳转行号
    :n Enter 其中n为要跳转的行号
    nggnG 会直接跳转到第n行(不需要按Enter)。




推荐操作

很多时候并不是在自己的机器上运行这些工具,也不太可能去专门修改他人的机器上的配置文件。重启之类的。

vi 文件名
ESC进入命令模式
:set number 显示行号
nG 先按要跳转的行号,然后按Shift+n即可跳转,也就是说,按两次即可跳转。






gg 跳转到第一行
GShift+n,跳转到最后一行。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/226469.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午10:49
下一篇 2026年3月16日 下午10:50


相关推荐

  • 利用139邮箱的免费短信提醒作为报警接口「建议收藏」

    利用139邮箱的免费短信提醒作为报警接口「建议收藏」各位开发者手机短信里肯定都收到过线上业务报警短信,邮箱里肯定有更多报警邮件,很多公司都把报警信息通过邮件发送,但是这样不能保证接收到。通过短信发送的话,即使很多短信接口很便宜,但是每条也有四五分钱,而且报警信息通过不会单个出现,所以,万一bug集中出现,就亏大了。然后我发现了个神器,以前一直没有注意的垃圾信息:移动提供的默认139邮箱,每次收到邮件都会发送免费短信,既然这样,为何不把报警邮件发到13

    2022年10月13日
    5
  • vue响应式原理理解

    vue响应式原理理解要理解响应式原理,首先要理解两个问题,数据改变后,Vue是如何监听的,要通知哪些人然后进行界面的刷新首先来理解一下下面这这个监听数值改变与监听获取数据的函数,首先创建一个对象,然后这个对象就是用来被监听的,首先使用forEach来把对象里面所有的值取出来放到value这里,然后再defindeProperty里面重新定义,这个方法里面有一个set和get方法,分别是处理监听数据改变和数据被获取…

    2022年5月1日
    33
  • Java 中是如何获取 IP 属地的[通俗易懂]

    Java 中是如何获取 IP 属地的[通俗易懂]细心的小伙伴可能会发现,抖音新上线了IP属地的功能,小伙伴在发表动态、发表评论以及聊天的时候,都会显示自己的IP属地信息这里有三个名词,分别是X-Forwarded-For:一个HTTP扩展头部,主要是为了让Web服务器获取访问用户的真实IP地址。每个IP地址,每个值通过逗号+空格分开,最左边是最原始客户端的IP地址,中间如果有多层代理,每⼀层代理会将连接它的客户端IP追加在X-Forwarded-For右边。X-Real-IP:一般只记录真实发出请求的客户端IP

    2022年10月21日
    3
  • 7款最佳Gemini替代方案:在2025年找到你的理想AI助手

    7款最佳Gemini替代方案:在2025年找到你的理想AI助手

    2026年3月15日
    2
  • ProgressDialog总结

    ProgressDialog总结ProgressDialog的使用 ProgressDialog继承自AlertDialog,AlertDialog继承自Dialog,实现DialogInterface接口。 ProgressDialog的创建方式有两种,一种是newDialog,一种是调用Dialog的静态方法Dialog.show()。 //方式一:newDialog finalProgr…

    2022年7月14日
    21
  • docker(11)Dockerfile 中的COPY与ADD 命令[通俗易懂]

    docker(11)Dockerfile 中的COPY与ADD 命令[通俗易懂]前言Dockerfile中提供了两个非常相似的命令COPY和ADD,本文尝试解释这两个命令的基本功能,以及其异同点,然后总结其各自适合的应用场景。Build上下文的概念在使用dock

    2022年7月31日
    10

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号