5个最好的Unix CLI文件编辑器

本文概述

  • 5. GNU Midnight Commander
  • 4. JOE编辑器
  • 3. GNU Nano
  • 2. VIM
  • 1. GNU Emacs
如果你很懒惰并且不想打开与服务器的SFTP连接, 下载文件并在本地进行编辑, 或者你正在处理需要远程编辑的大文件, 那么CLI编辑器这一术语无疑是一个熟悉的给你的话。它们广泛用于修改服务器中的配置文件, 而无需在Git或Subversion等版本控制软件上处理此类文件。我们中的许多人习惯于使用单个CLI编辑器, 这是我们第一次在终端中编辑文件时使用的CLI编辑器, 但是并不是每个人都知道CLI编辑器有很多选择, 你可以学习使用你最喜欢的编辑器
在本文中, 我们将与你分享在Unix环境中可以使用的5种最常用的CLI文件编辑器。
5. GNU Midnight Commander
5个最好的Unix CLI文件编辑器

文章图片
GNU Midnight Commander是一个视觉文件管理器, 已获得GNU通用公共许可证的许可, 因此具有免费软件的资格。它是一个功能丰富的全屏文本模式应用程序, 可让你复制, 移动和删除文件以及整个目录树, 搜索文件并在子外壳中运行命令。包括内部查看器和编辑器。 Midnight Commander基于多种文本界面, 例如Ncurses或S-Lang, 它可以通过SSH连接和各种远程Shell在X Window终端内部的常规控制台上工作。
要使用此工具编辑文件, 只需运行以下命令:
mcedit file.txt

4. JOE编辑器
5个最好的Unix CLI文件编辑器

文章图片
JOE是基于终端的全功能屏幕编辑器, 根据GNU通用公共许可证(GPL)分发。 JOE自1988年以来一直存在, 并成为许多Linux发行版的标准配置。 JOE是MicroPro古老的微型文字处理器WordStar和Richard Stallman著名的基于LISP的文本编辑器GNU-EMACS的混合体(但它不使用任何一个程序的代码):大部分基本编辑键与WordStar中的相同, 整体而言编辑的感觉。 JOE还具有EMACS的一些关键绑定和许多强大功能。
JOE用C编写, 唯一的依赖关系是libc。这使得JOE易于构建(只需” 配置” 和” 进行安装” ), 使其可以包含在小型系统和恢复磁盘上。在x86中, 编译后的二进制文件约为300K。请注意, JOE可以使用termcap或terminfo终端功能数据库(或ANSI终端的内置termcap条目)。该选择由” 配置” 选项控制。如果使用terminfo, 则需要一个库来访问数据库(在某些系统上, 该库为ncurses, 但JOE并不使用curses来控制终端-为此, 它具有自己的代码)。
joe file.txt

JOE的大部分外观由其简单的配置文件” joerc” 决定。除” joe” 外, 还默认安装了几种编辑器变体:” jmacs” (模拟GNU-EMACS), ” jstar” 模拟WordStar, ” jpico” 模拟Pine邮件编辑器PICO和” rjoe” (受限版本) JOE允许仅用于编辑命令行上给定的文件。 JOE链接到多个名称。用来在末尾加上” rc” 来调用编辑器的名称给出了要使用的配置文件的名称。因此, 如果需要, 你可以轻松制作自己的变体。你也可以通过将系统” joerc” 文件复制到主目录来自定义编辑器。 Joe编辑器的功能:
  • 多文件搜索和替换文件列表可以在命令行中给出, 也可以通过在JOE中运行的UNIX命令(grep / find)给出。
  • 鼠标支持, 包括滚轮(使用xterm时效果最佳)。鼠标可以调整窗口大小, 滚动窗口, 选择和粘贴文本以及选择菜单项。
  • 状态行上的上下文显示:允许你查看功能光标的名称。
  • 支持UTF-8, 可选自动检测UTF-8文件。
  • 突出显示40多种语言的语法。
  • 十六进制编辑模式。将JOE用作磁盘编辑器:joe -overwrite -hex / dev / hda1, 0, 512(编辑/ dev / hda1的第一个扇区)。
  • 即使处理MS-DOS或UNIX行尾时, 二进制文件的非破坏性编辑。
  • 交换文件允许编辑大于内存的文件。
  • 上下文相关的在线帮助。
  • 类似于Bash的TAB完成和所有提示的历史记录, 或者跳至完成菜单并使用它遍历文件系统。
  • 通过按ESC Enter来完成编辑缓冲区中的单词(将缓冲区中的其他单词用于词典)。
  • 兼容EMACS的文件锁和文件修改检查。
  • 外壳窗口。
  • 将多个窗口复制到相同或不同的文件上。
  • 编译并逐步处理错误或Grep并逐步查找。
  • 转到匹配字符定界符” ()[] {} < > ” , 它会跳过注释和引用的内容。
  • 转到匹配的词定界符, 包括XML标签和C预处理程序指令。
  • Ctrl-箭头键块选择。
  • 搜索和替换系统, 包括正则表达式和可选的增量搜索。用于匹配平衡C表达式的正则表达式键。
  • 标签文件搜索(标签搜索提示中的选项卡完成使用标签文件作为数据库)。
  • 拼写检查命令调用aspell或ispell。拼写语言可以通过编辑器传递。
  • 保留新闻/邮件引用缩进字符的段落格式。
  • 无限撤消和重做。
  • Yank缓冲区允许单步执行并插入以前删除的文本。
  • 状态文件恢复历史记录缓冲区, 拉动缓冲区和最后一个文件的光标位置。
  • 光标位置历史记录使你可以逐步浏览文件的先前访问区域。
  • 多个交互式键盘宏。可以将宏分配给joerc文件中的键序列。
  • 阻止移动/复制/删除/过滤器。
  • 矩形(柱状)块模式-搜索和替换可以缩小到矩形块。矩形块可以通过UNIX命令过滤。
  • 改型/插入模式。
  • 缩进/取消缩进(向左或向右移动块)。
  • 自动缩进模式。
  • ASCII图形的图片模式。
  • 行号模式显示每行的行号。
  • 强大的科学计算器, 具有块统计功能(总和/标准偏差/高亮显示的数字块)。
  • Termcap / Terminfo支持使JOE可以使用任何终端或终端仿真器。
  • 可以接受来自管道的数据, 例如:ls |乔
3. GNU Nano
5个最好的Unix CLI文件编辑器

文章图片
GNU nano旨在免费替代Pico文本编辑器, 该编辑器是华盛顿大学Pine电子邮件套件的一部分。它的目的是” 尽可能地模仿Pico, 并可能包括其他功能” 。最初, 该项目名为TIP, 但由于与另一个名为” tip” 的程序发生命名空间冲突, 因此正式将其重命名为nano。原始的” 提示” 程序” 建立与远程主机的全双工终端连接” , 并且包含在许多较旧的Unix系统(和Solaris等较新的系统)中。要使用nano编辑文件, 你只需要运行以下命令:
nano file.txt

2. VIM
5个最好的Unix CLI文件编辑器

文章图片
Vim是一个高度可配置的文本编辑器, 用于有效地创建和更改任何类型的文本。在大多数UNIX系统和Apple OS X中, 它都包含为” vi” 。其功能包括:
  • 持久的多级撤消树
  • 扩展的插件系统
  • 支持数百种编程语言和文件格式
  • 强大的搜索和替换
  • 与许多工具集成
【5个最好的Unix CLI文件编辑器】要使用vim编辑文件, 请运行以下命令:
vim file.txt

1. GNU Emacs
5个最好的Unix CLI文件编辑器

文章图片
GNU Emacs是可扩展的, 可自定义的, 自记录的实时显示编辑器, 无需X11支持。与其他广泛使用的UNIX文本编辑器vi和扩展接口的功能相比, Emacs提供了更长的命令列表。 GNU Emacs用C编写, 设计用于Unix或类Unix内核。它包括自己的Lisp解释器, 该解释器用于执行用Lisp编写的编辑器部分。
要使用Emacs编辑文件, 请运行以下命令:
emacs file.txt

如果你知道另一个很棒的CLI文本编辑器, 请在注释框中与社区共享。

    推荐阅读