Linux nano命令行编辑器

在命令行上工作时,经常需要创建或编辑文本文件。Vim和Emacs是最强大和最受欢迎的两种命令行编辑器

6 min read
By myfreax
Linux nano命令行编辑器
Linux nano命令行编辑器

在命令行上工作时,经常需要创建或编辑文本文件。Vim和Emacs是最强大和最受欢迎的两种命令行编辑器。

两者都有陡峭的学习曲线,可能会吓到新用户。对于那些需要简单编辑器的人,可以使用nano。

GNU nano是用于Unix和Linux操作系统的易于使用的命令行文本编辑器。它包含您希望从常规文本编辑器获得的所有基本功能。

例如语法高亮显示,多个缓冲区,使用正则表达式进行搜索和替换,拼写检查,UTF-8编码等。

在本教程中,我们将介绍使用nano编辑器的基础知识,包括如何创建和打开文件,编辑文件,保存文件。

搜索和替换文本,剪切和粘贴文本,退出nano编辑器,配置nano,配置nano语法高亮。

安装 Nano

Nano文本编辑器已预装在macOS和大多数Linux发行版上。要检查您的系统上是否安装了它,请运行命令nano --version,命令将会打印nano的版本号。

如果您的系统上未安装nano,终端将会提示你bash: command not found: nano。可以使用发行版的软件包管理器进行安装。

如果你的计算机运行的是基于Debian的Linux发行版,例如Ubuntu,Linux mint,可以运行sudo apt update && sudo apt install nano安装Nano编辑器。

如果你的计算机运行的是基于Redhat的Linux发行版,例如Fedora,CentOS。可以运行sudo yum install nano安装Nano编辑器。

sudo apt install nano

sudo yum install nano

nano --version
GNU nano, version 2.9.3
(C) 1999-2011, 2013-2018 Free Software Foundation, Inc.
(C) 2014-2018 the contributors to nano
Email: nano@nano-editor.org	Web: https://nano-editor.org/

nano 打开/创建文件

要打开现有文件或创建新文件,请打开终端运行命令nano后接文件名。这将打开一个新的编辑器窗口,您现在可以开始编辑文件。

在窗口的底部,列出了可在 nano编辑器使用的按键快捷方式。所有命令都以^M字符作为前缀。字母M代表Alt 键。^表示Ctrl键。

例如,^J意味着同时按下CtrlJ键。您可以键入Ctrl+g获取所有命令的列表。

为了能够打开文件,您必须对该文件具有读取权限。例如命令nano filename将会打开文件filename。

nano filename

如果要在打开文件使光标在指定行和字符上,可以运行命令nano +line_number,character_number filename

如果省略光标参数则将位于第一个字符上。line_number是行号,character_number是第几个字符。

nano +line_number,character_number filename

nano 保存并退出

首先保存对文件所做的更改,按Ctrl+o快捷键。如果该文件尚不存在,则将在保存后立即创建该文件。再按Ctrl+x退出nano编辑器。

nano不像vim有强制退出的选项,如果你对未保存的文件按下Ctrl+x快捷键退出。nano将询问您是否要保存更改,Save modified buffer?。

按下Ctrl+y表示保存并退出nano编辑器,按下Ctrl+n表示不保存并退出nano编辑器。

要保存文件,您必须具有对该文件写权限。如果是创建文件,则需要对将要创建文件的目录具有写权限。

nano 编辑文件

与vim不同,nano是一种无模式的编辑器,这意味着您可以在打开文件后立即开始输入和编辑文本。

要将光标移动到指定的行和字符上,请按Ctrl+_快捷键,然后在line number, column number:字段中输入数字,再按Enter

注意:Ctrl+_快捷键与Gnome终端的缩小快捷键存在冲突,你需要调整快捷键才可以在nano使用Ctrl+_快捷键,你也可以暂时禁用Gnome终端的快捷键。

nano 搜索和替换

按下Ctrl+w将会搜索文本,然后键入搜索的关键词,再按Enter。光标将移至第一个匹配项。要移至下一个匹配选项,请按Alt+w

如果要搜索并替换,请按Ctrl+\。输入搜索词和要替换的文本。编辑器将移至第一个匹配项,并询问您是否替换它。

YN后将移至下一个匹配项。按下A将替换所有匹配项。

nano 复制/剪切和粘贴

要选择文本,请将光标移动到文本的开头,然后按Alt+a。这将设置一个选择标记。使用箭头键将光标移动到要选择的文本的末尾。

所选文本将突出显示。如果要取消选择,请按Ctrl+6。按下Alt+6将所选文本复制到剪贴板。Ctrl+k将剪切选定的文本。

如果要剪切整行,只需将光标移至该行并按Ctrl+k。您可以通过Ctrl+k多次单击来剪切多行。

要粘贴文本,请将光标移动到要放置文本的位置,然后按Ctrl+u

自定义Nano

当启动nano时,它将从全局配置文件/etc/nanorc和用户的配置文件~/.config/nano/nanorc或者~/.nanorc中读取其配置参数。

用户文件中指定的选项优先于全局选项。访问nanorc页面以获取所有可用选项的完整列表。

nano 语法高亮

Nano附带了针对大多数流行文件类型的语法高亮规则。在大多数Linux系统上,语法文件存储在/usr/share/nano目录中,并且包含在/etc/nanorc配置文件中。

要在新的文件类型启用语法高亮,最简单方式是将语法高亮规则文件添加到/usr/share/nano目录中。

设置 Nano 默认编辑器

在大多数Linux系统上,默认情况下,诸如visudocrontab命令的默认文本编辑器设置为vi。

要使用nano作为默认的文本编辑器,您需要更改VISUALEDITOR环境变量。Bash用户可在~/.bashrc文件设置VISUALEDITOR环境变量

export VISUAL=nano
export EDITOR="$VISUAL"
~/.bashrc

结论

在本教程中,我们向您展示了如何使用Gnu nano文本编辑器。它是Linux用户中流行的文本编辑器,学习曲线很小。有关Gnu Nano的更多信息,请访问官方nano文档页面。