多数 Linux 发行版已预装 nano,验证方法:
nano --version
如果没有安装,可以通过以下命令安装:
Debian/Ubuntu
sudo apt update && sudo apt install nano -y
CentOS/RHEL
sudo yum install nano -y
启动 nano
打开/创建文件:
nano 文件名
例如,创建一个名为 example.txt 的文件:
nano example.txt
如果文件不存在,会新建一个空白文件;如果文件存在,会直接打开。
同时编辑多个文件:
nano 文件1 文件2
nano 界面布局
标题栏(顶部):
显示当前文件名、版本号及文件状态(是否已修改)。
主编辑区(中间):
用于编辑文本。
状态栏(底部):
显示当前操作提示(如保存时的文件名)。
快捷键提示(底部两行):
显示常用快捷键(如 ^G 表示 Ctrl+G)。
基础操作
- 移动光标
操作 快捷键
向上移动一行 Ctrl + P
向下移动一行 Ctrl + N
向左移动一个字符 Ctrl + B
向右移动一个字符 Ctrl + F
移动到行首 Ctrl + A
移动到行尾 Ctrl + E
上滚一页 Ctrl + Y
下滚一页 Ctrl + V - 插入和编辑文本
插入文本:直接在光标位置输入。
删除字符:
删除光标前的字符:Backspace
删除光标后的字符:Delete
删除整行:Ctrl + K
撤销操作:Alt + U(可多次撤销) - 剪切、复制和粘贴
操作 快捷键
剪切一行 Ctrl + K
剪切多行 反复按 Ctrl + K
粘贴剪切的内容 Ctrl + U
复制文本(需先标记) Ctrl + ^ 标记起始,Alt + ^ 标记结束,再按 Ctrl + K 剪切,Ctrl + U 粘贴 - 保存和退出
操作 快捷键
保存文件 Ctrl + O(回车确认)
退出编辑器 Ctrl + X
保存并退出 Ctrl + O 保存,Ctrl + X 退出
高级功能
查找与替换
查找文本:Ctrl + W # 输入关键词后按回车
替换文本:
Ctrl + \ # 输入搜索词,再输入替换词
逐个替换:按 Y
全部替换:按 A
行号显示
切换行号显示:Ctrl + C # 在光标位置显示行号和列号
永久显示行号:
修改 ~/.nanorc 配置文件:
echo "set linenumbers" >> ~/.nanorc
语法高亮
启用语法高亮:
复制默认配置文件:cp /usr/share/nano/*.nanorc ~/.nano/
启用语法高亮:
mkdir -p ~/.nano/
echo "include ~/.nano/*.nanorc" >> ~/.nanorc
重启 nano 即生效。
- 多文件切换
切换文件:
Ctrl + → # 下一文件
Ctrl + ← # 上一文件 自动缩进
开启自动缩进:Alt + ] # 在代码编辑时按此键
常用快捷键汇总
功能 快捷键
帮助文档 Ctrl + G
保存文件 Ctrl + O
退出编辑器 Ctrl + X
查找文本 Ctrl + W
替换文本 Ctrl + \
剪切整行 Ctrl + K
粘贴剪切内容 Ctrl + U
上滚一页 Ctrl + Y
下滚一页 Ctrl + V
移动到行首 Ctrl + A
移动到行尾 Ctrl + E
撤销操作 Alt + U
显示行号 Ctrl + C
读取其他文件 Ctrl + R
写入文件(另存为) Ctrl + W
常见问题处理
权限不足导致保存失败
解决方法:使用 sudo 提权编辑文件:sudo nano /etc/nginx/nginx.conf
- 误删内容未保存
解决方法:退出时选择 Cancel 放弃退出,用 Alt + U 撤销操作后重新保存。 快捷键冲突
解决方法:自定义快捷键,编辑 ~/.nanorc:bind ^S save main # 将保存绑定到 Ctrl+S
- 无法使用 Meta 键(如 M-?)
解决方法:现代键盘通常用 Esc 或 Alt 键替代 Meta 键。例如,M-? 可替换为 Esc + ?。
八、配置 nano
修改默认配置:编辑 ~/.nanorc 文件,添加以下内容:
set linenumbers # 显示行号
set syntax # 启用语法高亮
set autoindent # 自动缩进
set tabstospaces # 将 Tab 转为空格
set tabsize 4 # 设置 Tab 宽度为 4 个空格
示例场景
编辑系统配置文件
sudo nano /etc/hosts
修改后按 Ctrl + O 保存,Ctrl + X 退出。
创建并编辑脚本文件
nano script.sh
输入脚本内容:
#!/bin/bash
echo "Hello, World!"
保存并赋予执行权限:
chmod +x script.sh
多文件编辑
nano file1.txt file2.txt
使用 Ctrl + → 和 Ctrl + ← 切换文件。
