Nano是一个简单易用的文本编辑器，具有界面简洁和操作直观的优点。本教程介绍Nano编辑器的部分常用操作和常用快捷键。  

## **安装情况**
* 本文档以**Nano 2.9.3**版本为例进行介绍，其他版本可能存在差异，请参考使用。

* 大多数Linux发行版中通常已预装Nano编辑器，在终端中执行`nano --version`命令可查看Nano版本信息。若您的系统未安装Nano编辑器，则需要手动安装。具体操作，请参见[Nano官网文档](https://www.nano-editor.org/dist/latest/faq.html#2)。

* 云命令行（Cloud Shell）是阿里云提供的网页版命令行工具，您可以在云命令行中使用预安装的Nano编辑器完成文本编辑任务。更多信息，请参见[什么是云命令行](https://help.aliyun.com/document_detail/90256.html)。

## 注意事项
* 快捷键示例说明：

  * `^<chr>`：表示在按住`CONTROL`键后，键入字符`<chr>`。

  * `M-<chr>`：表示在按住`META`、`EDIT`或`ALT`键后，键入字符`<chr>`。

* 部分Nano编辑器快捷键可能与其他软件或系统快捷键产生冲突，例如在云命令行中使用Nano编辑器时，快捷键`^W`会与浏览器快捷键产生冲突。当您遇到快捷键冲突时，可使用`Esc`键替换快捷键解决相关问题。

  * 双击`Esc`键后，键入字符`<chr>`。该操作等效于`^<chr>`。

  * 单击`Esc`键后，键入字符`<chr>`。该操作等效于`M-<chr>`。

## 常用操作
### 启动和退出

* 启动Nano：在Shell工具中执行`nano`命令，即可启动Nano编辑器。Nano编辑器在以此方式启动时会自动创建一个空文本文件，保存文件时需要您为文件指定文件名及文件目录。

* 退出Nano：使用快捷键`^X`，可退出Nano编辑器。

### 文件管理

* 打开或创建文件：

  * 编辑器外：执行`nano`命令时指定文件路径，即可在Nano编辑器中打开目标文件。若目标文件不存在，Emacs会在目标位置创建该文件。命令示例如下：

    ```
    HELPCODEESCAPE-bash
    nano fileName
    nano /etc/fileName
    ```

  * 编辑器中：在Nano编辑器中使用快捷键`^R``M-F`可在Nano编辑器中新建一个缓冲区，在新建缓冲区中打开目标文件。若目标文件不存在，Emacs会在目标位置创建该文件。

* 保存文件：

  * 使用快捷键`^S`可将当前缓冲区内容快速保存至对应文件中。若当前缓冲区未指定文件，则需要您手动为文件指定文件名及文件目录。

  * 使用快捷键`^X`退出Nano编辑器时，若缓冲区文件未保存，则会询问是否保存。

    * 按`Y`可快速保存文件。

    * 按`N`可不保存修改并退出。

    * 按`^C`可取消退出动作。

* 另存为文件：使用快捷键`^O`后输入文件路径，可将当前缓冲区内容另存为至目标文件中。

### 移动光标

* 向左移动：使用快捷键`^B`/`right`，将光标向左移动一个字符。

* 向右移动：使用快捷键`^F`/`left`，将光标向右移动一个字符。

* 向上移动：使用快捷键`^P`/`up`，将光标向上移动一行。

* 向下移动：使用快捷键`^N`/`down`，将光标向下移动一行。

* 跳转行数：使用快捷键`^_`后输入目标行的行号，单击`Enter`键可快速跳转至目标行。

* 向前翻页：使用快捷键`^Y`，跳转至上一页，跳转后光标位于页首。

* 向后翻页：使用快捷键`^V`，跳转至下一页，跳转后光标位于页首。

### 文本编辑

* 删除文本：使用`退格键`删除光标左侧字符，使用`^D`删除光标右侧字符。

* 选中文本：移动光标至目标文本起始位置，使用快捷键`M-A`进入选择模式，移动光标选中目标文本，选中部分会高亮显示。

* 复制文本：使用快捷键`M-6`可复制选中文本。若未选中文本，则复制光标当前所在行的文本至剪贴板中。

* 剪切文本：使用快捷键`^K`可剪切选中文本。若未选中文本，则剪切光标当前所在行的文本至剪贴板中。

* 粘贴文本：在光标位置使用快捷键`^U`可将剪贴板中文本插入至光标处。多次剪切连续文本时，仅需使用一次快捷键`^U`即可粘贴全部内容。

* 查找文本：使用快捷键`^W`可在文档中搜索文本，输入搜索关键字后按`Enter`确定，Nano编辑器将为您定位到第一处匹配的文本。

* 替换文本：使用快捷键`^\`或`^R`可快速替换所有符合要求的文本。

* 对齐文本：使用快捷键`^J`可格式化文本。

* 撤销：使用快捷键`M-U`可撤销上一步操作。

* 重做：使用快捷键`M-E`可重做上一次撤销的操作。

### 修改配置

您可以通过编辑`.nanorc`文件自定义Nano编辑器配置，该文件通常位于`$HOME`目录下。Nano编辑器支持通过修改配置开启行号显示、自动缩进等功能。

* 开启行号显示：在`.nanorc`文件中插入文本`set linenumbers`，保存后重启即可在Nano编辑器中开启行号显示。

* 开启自动缩进：在`.nanorc`文件中插入文本`set autoindent`，保存后重启即可在Nano编辑器中开启自动缩进。

* 更多可用配置项，请参见[Nano官网文档](https://www.nano-editor.org/dist/v2.1/nanorc.5.html)。

## 示例
### 修改Nano编辑器配置文件

使用Nano编辑器修改`.nanorc`文件，在文件的第一行插入文本`set linenumbers`，为Nano编辑器开启行号显示。操作步骤如下：

1. 执行以下命令创建或打开配置文件。

   ```
   HELPCODEESCAPE-bash
   nano ~/.nanorc
   ```

2. 当前光标位于该文件中的起始位置，输入文本`set linenumbers`。

3. 使用快捷键`^S`保存文件。

4. 使用快捷键`^X`退出编辑。

5. 执行`nano`命令进入Nano编辑器，编辑器左侧显示行号。预期结果如下图所示：

   ![image](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/3946183371/p875637.png)