美文网首页Linux
Linux常用命令之--编辑器的使用方法

Linux常用命令之--编辑器的使用方法

作者: 逗儿比的日常 | 来源:发表于2020-12-10 16:51 被阅读0次

    编辑器

    在Linux系统中,有许多种文本编辑工具。相当于windows里的word,记事本等。常见的文件编辑器如下:
    • vi 纯文本(命令行)的编辑器
    • VIM 纯文本(命令行)的编辑器
    • gedit 就是Windows里的记事本
    • OpenOffice 就相当于MicroOffice

    Vi与VIM编辑器

    •VI(Visual Interface) 编辑器是Linux和Unix上最基本的文本编辑器,它可以工作在字符模式(就是纯命令行模式)下。由于不需要图形界面,使它成了效率很高的文本编辑器。尽管在Linux上也有很多图形界面的编辑器可用,但VI在系统和服务器管理中的能力,是那些图形编辑器所无法比拟的。公司很少依赖UI界面,因为占用CPU资源
    •VIM(VI IMproved)是VI的一个改进版,它兼容了所有VI的所有指令。另外还添加了许多的重要特性,如:语法高亮功能, 对C语言的自动缩进等
    •Vim(和Vi)一个最大的优势在于, 它最常用的命令都是简单的字符, 这比起使用复杂的控制组合键要快得多

    文件的打开与新建

    • vim [文件名]
    • 如果文件已存在,则此文件被打开且显示文件内容
    • 如果文件不存在,则vim在第一次存盘时自动新建此文件在硬盘上

    Vim模式介绍

    vim提供下面几种模式
    • 命令模式(其它模式->ESC)
    控制光标移动,删除字符,段落复制
    • 编辑/插入模式(命令模式->a、i、o、A、I、O)
    新增文字及修改文字
    • 末行模式(命令模式-> :)
    保存文件,离开vi,以及其他设置
    • 可视化模式(命令模式-> v)
    选取文件内容、复制、剪切
    • 查询模式(命令模式-> ?、/)
    查询文件中的某个关键字

    命令模式(光标移动)

    命令模式中,用户可输入下面的指令来移动光标
    • h(←) 将光标向左移动一格
    • l(→) 将光标向右移动一格
    • j(↓) 将光标向下移动一格
    • k(↑) 将光标向上移动一格
    • 0(Home) 数字0,将光标移动到该行的行首
    • $(End) 将光标移动到该行的行末
    • PageUp/PageDown 上下翻屏
    • H 将光标移动到该屏幕的顶端
    • M 将光标移动到该屏幕的中间
    • L 将光标移动到该屏幕的底端
    • w或W 将光标移动到下一单词
    但是w是用标点符号来分割的,W是用空格来分割的
    • gg 将光标移动到文章的首行
    • G 将光标移动到文章的尾行

    在命令模式下可以直接删除字符
    • x/<del>:删除一个字符
    • nx:删除下n个字符
    • dd:删除当前行 (按照回车符分割的)
    • ndd:删除后n行(从光标所在的行开始算起)
    • dw:删至词尾
    • ndw:删除后n个词
    • d$:删至行尾
    • nd$:删除后n行(从光标当前处开始算起)

    在命令模式下撤销操作
    • u:取消上一个更动
    • U:取消一行内的所有更动
    • 末行模式中也有一个撤销操作
    • :e! :放弃所有更动,重新编辑

    编辑模式/插入模式

    在Vim中可从命令模式中输入下面的指令来进入编辑模式
    • i: 在光标之前插入内容
    • a: 在光标之后插入内容
    • o: 向下换行插入内容 (新开一行)
    • I: 在光标当前行的开始部分插入内容
    • A: 在光标当前行的末尾插入内容
    • O: 换行插入内容(向上换行)

    可视化模式

    在命令模式下键入v则进入可视化操作
    • 移动光标以选定要操作的字符串
    • c 剪切选定块的字符串
    • y 复制选定块的字符串
    • 在命令模式中输入“p”指令,就可将复制或剪切的内容贴在光标所在位置的右边
    *在insert状态下,用鼠标选中想要复制的内容,按一下中间滚轮可以将复制的内容粘贴到光标所在的位置

    查询模式

    在vim中,也支持查找操作。在命令模式中输入下面的指令就可以进入查询模式。
    • /关键字 向下查询
    要找/root ,需要输入//root
    • ?关键字 向上查询
    • 在查找到后,可以用 n 继续寻找下一个关键字段

    末行模式

    • 在命令模式下输入“:”进入末行模式
    • :w 保存文件
    • :w [文件路径] 保存当前文件到哪儿
    • :q 如果未对文件做改动则退出
    • :q! 放弃存储并退出
    • :wq 或 :x 保存当前文件并退出
    • :e 文件名/绝对路径 打开另一文件并开始编辑
    • :r 文件名 在当前光标的下一行插入文件内容
    比如现在的文件名为test1, 输入:r /etc/fas ,这时/etc/fas里的内容就会插入到test1文件内容中
    • :r! 命令 在当前光标后插入命令执行结果
    • :set nu / :set nonu显示行号/不显示行号
    • :number(表示数字,不是number这个单词) 将光标定位到number行
    • :[range]s/<match>/<string>/[g,c,i] 替换一个字符串
    g(global全局)
    s(switch替换)
    c (confirm确认)
    === 基本替换 ===
    将当前行第一个出现的mon替换为monday
    :s/mon/monday
    将当前行所有的mon替换为monday
    :s/mon/monday/g
    将1到3行所有的mon替换为monday
    :1,3s/mon/monday/g
    将开始行到最后一行所有的mon替换为monday(即替换整个文件的mon)
    :1,$s/mon/monday/g
    因1,$s等价于%s,也可以写成如下形式:
    :%s/mon/monday/g
    将所有包含pattern行的所有的mon替换为monday
    :g/pattern/s/mon/monday/g
    第一个g表示是在文件的所有行上执行的命令,模式pattern识别要发生替换的行

    相关文章

      网友评论

        本文标题:Linux常用命令之--编辑器的使用方法

        本文链接:https://www.haomeiwen.com/subject/iywhgktx.html