热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

46文本编辑器及文本处理

46-文本编辑器及文本处理常见文本编辑器linux文本编辑器介绍Linux文本编辑器-emacsLinux文本编辑器-nanoLinux文本编辑器-geditLinux文本编辑器-




46-文本编辑器及文本处理


  • 常见文本编辑器
    • linux文本编辑器介绍
    • Linux文本编辑器-emacs
    • Linux文本编辑器-nano
    • Linux文本编辑器- gedit
    • Linux文本编辑器- kedit
    • Linux文本编辑器- vi
    • Linux文本编辑器- vim

  • 使用vim编辑器
    • vim基础操作-打开文件
    • vim基础操作-移动光标
    • vim基础操作–数据操作
    • vim基础操作-行号显示与取消
    • vim基础操作-查找与替换
    • vim基础操作-设置搜索高亮
    • vim基础操作-修改文件
    • vim基础操作-撤销或重做
    • vim基础操作-保存文件并退出

  • 文本处理
    • 查看文件- cat (1)
    • 查看文件- more (1)
    • 查看文件- less (1)

  • 文件摘选和字段提取
    • 文件摘选- head
    • 文件摘选- tail
    • 提取列或字段- cut




常见文本编辑器

linux文本编辑器介绍


  • 文本处理是操作系统对文件管理的基础操作,文本编辑器是操作系统基础的功能软件之一,主要用来编写和查看文本文件。不同的文件编辑器有不同的辅助功能。根据使用环境的不同,Linux 的文本编辑器有很多类型。
  • 常见的 Linux 文本编辑器有:emacs,nano,gedit,kedit,vi,vim。

Linux文本编辑器-emacs


  • emacs是一款功能强大的编辑器,与其说是一款编辑器,它更像一个操作系统。emacs带有内置的网络浏览器、IRC客户端、计算器,甚至是俄罗斯方块。当然,emacs需要在图形化界面的Linux中使用。
  • 优点:
    可定制,可扩展
    功能强大
    可以与许多自由软件编程工具集成
  • 缺点:
    入门单独搞,对普通用户不友好

Linux文本编辑器-nano


  • nano是命令行界面下一个相对简单的文本编辑器,它是为了代替闭源的Pico文本编辑器而开发的,1999年以GPL协议发布第一个版本,是一个自由软件,同时也是GNU计划的一个组成部分。nano有很多人性化的功能设计,如语法高亮、正则表达式搜索和替换、平滑滚动、多个缓冲区、自定义快捷键、撤销或重复编辑。
  • 优点:
    易于使用,操作简单,适用于简单文本编辑。
  • 缺点:
    对复杂的文本编辑比较耗时,无强大的命令功能进行复杂操作,不支持如宏、一次编辑多个文件、窗口分割、垂直块/矩形选择/编辑、自动完成等高级功能。

Linux文本编辑器- gedit


  • gedit是一个GNOME桌面环境下兼容UTF-8的文本编辑器。它简单易用,有良好的语法高亮,对中文支持很好,支持包括GB2312、GBK在内的多种字符编码。gedit是一款自由软件。gedit包含语法高亮和标签编辑多个文件的功能。利用GNOME VFS库,它还可以编辑远程文件。它支持完整的恢复和重做系统以及查找和替换。
  • 优点:
    图形化界面,易上手,操作习惯与Windows类似,包括常用的快捷键如复制粘贴等。
  • 缺点:
    需要安装图形化桌面才能使用。

Linux文本编辑器- kedit


  • 与gedit类似,kedit是KDE图形化桌面中常用的一种文本编辑器。kedit编辑器,特别适用于浏览文本和各种配置文件。
  • 优点:
    图形化界面,易上手,操作习惯与Windows类似,包括常用的快捷键如复制粘贴等。
  • 缺点:
    需要安装图形化桌面才能使用。

Linux文本编辑器- vi


  • vi是标准的Unix文本编辑器,也是最古老的文本编辑器、最通用的文本编辑器。所有的Linux、Unix都默认带有vi文本编辑器。虽然vi的操作方式与其他常用的文本编辑器(如gedit)很不相同,但是由于其运行于字符界面,并可用于所有unix/linux环境,仍被经常使用。
  • vi的三种命令模式:
    Command : 命令模式,用于输入命令;
    lnsert : 插入模式,用于插入文本;
    Visual : 可视模式,用于浏览文本。
  • 优点 : 通用,几乎所有的Unix、Linux都自带vi。
  • 缺点 : 功能简单,显示效果单一。

Linux文本编辑器- vim


  • Vim是从vi发展出来的一个文本编辑器。其代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。和Emacs并列成为类Unix系统用户最喜欢的编辑器。
  • Vim的第一个版本由布莱姆·米勒在1991年发布。最初的简称是Vi IMitation,随着功能的不断增加,正式名称改成了Vi lMproved。现在是在开放源代码方式下发行的自由软件。
  • 从vi派生出来的vim具有多种模式:
    基本模式 : 普通模式、插入模式、可视模式、选择模式、命令行模式、Ex模式
    派生模式 : 操作符等待模式、插入普通模式、插入可视模式、插入选择模式、替换模式
    其他: Evim
  • openEuler 20.03 LTS系统安装后默认没有安装vim,需要手动安装vim

使用vim编辑器

vim基础操作-打开文件

[root@openEuler~]# vim filename


  • 如果filename文件存在,则会打开文件并显示文件内容
  • 如果filename文件不存在,vim会在下面提示[New File],并且会在第一次保存时创建该文件。
    在这里插入图片描述

vim基础操作-移动光标


  • 快速移动光标:
    上下左右键或k、j、h、l键上下左右移动光标。
    0 移动到行首
    g0移到光标所在屏幕行行首
    :n移动到第n行。
    gg:到文件头部。
    G:到文件尾部。
    :set nu : 显示行编号
  • 数据操作:
    yy or Y:复制整行文本。
    y[n]w:复制一(n)个词。
    d[n]w:删除(剪切)1(n)个单词
    [n] dd:删除(剪切)1(n)行。

vim基础操作–数据操作


  • 复制:
    yy or Y:复制整行文本。
    y[n]w:复制一(n)个词。
  • 粘贴:
    面向行的数据:
    ·p放置数据在当前行的下面
    ·Р放置数据在当前行的上面
    面向字符的数据:
    ·p放置数据在光标的后面.
    Р放置数据在光标前
  • 删除(剪切):
    d[n]w:删除(剪切)1(n)个单词
    [n] dd:删除(剪切)1(n)行。

vim基础操作-行号显示与取消


  • 显示行号
    :set nu
    在这里插入图片描述

  • 取消显示行号
    :set nonu


vim基础操作-查找与替换


  • 查找
    :/word在光标之后查找一个字符串word,按n向后继续搜索,shift+n向上搜索。
    :?word在光标之前查找一个字符串word,按n向后继续搜索。
  • 替换
    :\s/word1/word2 : word1替换为word2,替换光标后的第一个word1
    :\s?word1?word2 : word1替换为word2,替换光标前的第一个word1
    :1,5s/word1/word2/g : 将文档中1-5行的word1替换为word2
    不加g则只替换每行的第一个
    word1。
    %s/word1/word2/gi : 将文档所有的word1替换为word2,i不区分大小写。

vim基础操作-设置搜索高亮


  • 临时设置时,在命令模式下输入:
    :set hlsearch
    在这里插入图片描述

  • 永久设置,需要在/etc/vimrc中配置,增加一行set hlsearch,然后更新变量即可。


vim基础操作-修改文件


  • 使用vim filename打开文件后,进入的是普通模式。当想要修改文件时,可以按i键进入插入模式。进入插入模式时,会在最下面提示当前模式是Insert。按ecs可以退出插入模式,回到普通模式。
    在这里插入图片描述

vim基础操作-撤销或重做


  • u撤销最近的改变
  • U撤销当前行自从光标定位在上面开始的所有改变.
  • Ctrl+r重做最后一次“撤销”改变

vim基础操作-保存文件并退出


  • 退出插入模式:
    ·在插入模式下按ecs键退出插入模式
  • 常用的保存/退出的命令:
    :w 保存
    :q 退出
    :wq 保存并退出
    :q! 强制退出
    :wq! 强制保存并退出

文本处理

查看文件- cat (1)


  • cat是一个文本文件查看和连接工具。cat有如下功能:
    显示文件内容,cat filename
    编辑一个文件,cat > filename。
    将几个文件合并为一个文件,cat file1 file2 > file3.(这里>表覆盖(原文件内容))
    如果要保留原文件 cat >> filename或cat file1 file2 >> file3
  • cat常用选项有:
    -n:从1开始对所有行编号并显示在每行开头
    -b:从1开始对非空行编号并显示在每行开头
    -s:当有多个空行在一起时只输出一个空行
    -E:在每行结尾增加$
    –help:显示帮助信息

在这里插入图片描述
在这里插入图片描述


查看文件- more (1)


  • more可以一次查看文件或者标准输入的一页,与cat不同的是more可以按页来查看文件的内容,还支持直接跳转行等功能。
  • 命令格式: more [options] …
  • more常用的选项有:
    +n : 从第n行开始显示
    -n : 定义屏幕大小为n行
    -c : 从顶部清屏,然后显示 (例:more -c10 file.txt :)
    -s ∶把连续的多个空行显示为一行
  • more白常用操作:
    Enter : 默认向下滚动1行
    Ctrl+F : 向下滚动一屏
    空格键 : 向下滚动一屏
    Ctrl+B : 向上滚动一屏
    b : 向上滚动一屏
    = : 输出当前行号
    :f : 输出文件名和当前行号
    q : 退出more

查看文件- less (1)


  • less可以一次查看文件或者标准输入的一页,less的用法比起more更加的有弹性。支持与vim相似的编辑:(/word 向后查找关键字 , ?word向前查找关键字)
  • 命令格式: less [option]文件
  • less常用的选项有:
    -f:强制打开特殊文件,例如外围设备代号、目录和二进制文件-g:∶只标志最后搜索到的关键字
    -i:忽略搜索时的大小写
    -N:显示每行的行号
    -s:当有多个空行在一起时只输出一个空行
    前面这几个选项可以进入less之前使用,也可以在进入less之后使用
    -o<文件名> : 将less输出的内容保存到指定文件
    例&#xff1a;
    ls -l /etc | less -o /root/output.txt
    用less选项显示ls命令的输出信息&#xff0c;并保存在指定目录下的output.txt文件当中
  • less常用的操作:
    b:向上翻一页
    d:向下翻半页
    h:显示帮助界面
    q:退出less
    u:向上翻半页
    y:向上翻一行
    空格键:向下翻一页
    Enter:向下翻一行
    上下键:向上/下翻一行

文件摘选和字段提取

文件摘选- head


  • head用来显示文件的开头至标准输出中&#xff0c;默认head命令可以显示文件的前10行
  • 命令格式: head [option]…[文件]…
  • head常用的选项有:
    -q : 输出时隐藏文件名&#xff0c;head默认不显示文件名
    -v : 输出时显示文件名
    -c num : 显示前num 个字节
    -n num:显示前num行

文件摘选- tail


  • tail用来显示文件的末尾至标准输出中&#xff0c;默认tail命令可以显示文件的后10行
  • 命令格式: tail [option]… [file]…
  • tail常用的选项有:
    -f : 循环读取&#xff0c;对于日志文件的监控非常有用
    -q : 不显示文件名&#xff0c;tail默认不显示文件名
    -v &#xff1a; 显示文件名
    -c num : 显示文件最后num个字节
    -n num : 显示文件最后num行
    -s : 与-f结合使用&#xff0c;表示每次反复的时间间隔休眠s秒

在这里插入图片描述


提取列或字段- cut


  • cut用于显示文件或者标准输入的特定列&#xff0c;如:
  • [root&#64;openEuler ~]# cut -d: -f1/etc/passwd
    #显示/etc/passwd文件以:间隔的第一列
  • 命令格式: cut [option]… [文件]
  • cut常用的选项有:
    -b:仅显示行中指定直接范围的内容
    -c[范围]∶仅显示行中指定范围的字符
    -d : 指定字段的分隔符&#xff0c;默认的字段分隔符为“TAB"
    -f[范围] : 显示指定第num个字段的内容&#xff0c;可以用逗号隔开显示多个字段
  • 指定范围的方式&#xff1a;
    N : 每行的第N个字节&#xff0c;字符或字段
    N- &#xff1a; 每行的第N个字节&#xff0c;字符或字段到每行的末尾
    -M &#xff1a; 每行的第1个字节&#xff0c;字符或字段到每行第M个
    N-M &#xff1a; 每行的第N到M个字节&#xff0c;字符或字段

在这里插入图片描述







推荐阅读
  • 本文首先对信息漏洞的基础知识进行了概述,重点介绍了几种常见的信息泄露途径。具体包括目录遍历、PHPINFO信息泄露以及备份文件的不当下载。其中,备份文件下载涉及网站源代码、`.bak`文件、Vim缓存文件和`DS_Store`文件等。目录遍历漏洞的详细分析为后续深入研究奠定了基础。 ... [详细]
  • 在Mac平台上通过终端操作完成MySQL的启动与彻底关闭——八步指南
    在Mac平台上,通过终端操作实现MySQL的启动与完全关闭,本文提供了一套详细的八步指南。首先,在Finder中使用快捷键进入 `/usr/local` 目录,找到并进入 `mysql` 文件夹。接着,右键选择该文件夹并从上下文菜单中打开终端。在终端中,输入并执行 `./scripts/mysql_install` 命令以开始安装或初始化过程。后续步骤将指导用户如何顺利启动和安全关闭MySQL服务,确保系统资源的有效管理。 ... [详细]
  • Python与R语言在功能和应用场景上各有优势。尽管R语言在统计分析和数据可视化方面具有更强的专业性,但Python作为一种通用编程语言,适用于更广泛的领域,包括Web开发、自动化脚本和机器学习等。对于初学者而言,Python的学习曲线更为平缓,上手更加容易。此外,Python拥有庞大的社区支持和丰富的第三方库,使其在实际应用中更具灵活性和扩展性。 ... [详细]
  • Git基础操作指南:掌握必备技能
    掌握 Git 基础操作是每个开发者必备的技能。本文详细介绍了 Git 的基本命令和使用方法,包括初始化仓库、配置用户信息、添加文件、提交更改以及查看版本历史等关键步骤。通过这些操作,读者可以快速上手并高效管理代码版本。例如,使用 `git config --global user.name` 和 `git config --global user.email` 来设置全局用户名和邮箱,确保每次提交时都能正确标识提交者信息。 ... [详细]
  • 如何在Windows 10中设置自动清空回收站功能?
    在Windows 10中,如何设置自动清空回收站的功能?许多用户近期提出了这一疑问。为了确保系统运行顺畅,定期清理回收站中的文件是必要的。本文将详细介绍如何通过任务计划程序等方法,实现回收站的自动清空,帮助用户有效管理磁盘空间。 ... [详细]
  • Python数据分析入门指南:全面了解Python在数据科学中的应用 ... [详细]
  • 深入解析Tomcat:开发者的实用指南
    深入解析Tomcat:开发者的实用指南 ... [详细]
  • 六个接私活的平台,技术在手,财富自由!值得推荐给每一位专业人士!
    本文将介绍六个适合专业人士接私活的平台,帮助技术人才实现财富自由。这些平台不仅提供了丰富的项目机会,还为用户搭建了高效的合作桥梁,是每位技术人士不容错过的资源。 ... [详细]
  • 解决Windows 7启动后黑屏问题的有效方法与专业建议
    在使用Windows 7系统时,部分用户反映在登录界面输入密码后会出现黑屏现象,仅鼠标可见。本文将深入分析该问题的原因,并提供有效的解决方法和专业建议,帮助用户快速恢复正常操作。 ... [详细]
  • 在 Linux 系统中,`/proc` 目录实现了一种特殊的文件系统,称为 proc 文件系统。与传统的文件系统不同,proc 文件系统主要用于提供内核和进程信息的动态视图,通过文件和目录的形式呈现。这些信息包括系统状态、进程细节以及各种内核参数,为系统管理员和开发者提供了强大的诊断和调试工具。此外,proc 文件系统还支持实时读取和修改某些内核参数,增强了系统的灵活性和可配置性。 ... [详细]
  • 深入解析:Android开发进阶之Vim编辑器基础操作与应用
    本文深入探讨了Android开发中使用Vim编辑器的基础操作与应用。通过详细解析Vim的基本命令、配置文件和常用插件,帮助开发者提高代码编写效率。文章还介绍了如何在Android开发环境中高效利用Vim,包括集成开发环境(IDE)的配置和常见问题的解决方法。适合初学者和有经验的开发者参考。 ... [详细]
  • 提升工作效率:掌握这些技巧,IDEA 使用效率翻倍 | IDEA 高效操作指南
    提升工作效率:掌握这些技巧,IDEA 使用效率翻倍 | IDEA 高效操作指南 ... [详细]
  • 深入解析 Spring MVC 的核心原理与应用实践
    本文将详细探讨Spring MVC的核心原理及其实际应用,首先从配置web.xml文件入手,解析其在初始化过程中的关键作用,接着深入分析请求处理流程,包括控制器、视图解析器等组件的工作机制,并结合具体案例,展示如何高效利用Spring MVC进行开发,为读者提供全面的技术指导。 ... [详细]
  • 在2020年8月19日的深度分析中,我们探讨了HTML标签中同时存在`a`标签的`href`和`onclick`属性时的触发顺序问题。此外,还讨论了如何在一个自适应高度的父级`div`中,使两个子`div`中的一个固定高度为300px,另一个自动填充剩余空间的方法。最后,文章详细介绍了JavaScript异步加载的多种实现方式,包括但不限于`async`、`defer`属性以及动态脚本插入技术,为开发者提供了丰富的技术参考。 ... [详细]
  • 如何在浏览器中高效调用本地应用程序的方法与技巧
    为了在浏览器中高效调用本地应用程序,本文介绍了一种实用方法。通过创建并运行一个注册表文件(如 `test.reg`),可以实现点击浏览器按钮后自动启动指定的本地应用。具体步骤包括编写特定的注册表条目,并确保其正确配置以支持浏览器与本地应用之间的无缝交互。此外,文章还探讨了安全性和兼容性方面的注意事项,为开发者提供了全面的指导。 ... [详细]
author-avatar
dmcm0010
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有