[TOC]

0x00 基础前言

描述:nano 是一个字符终端的文本编辑器,有点像DOS下的editor程序。它比vi/vim要简单得多,比较适合Linux初学者使用。某些Linux发行版的默认编辑器就是nano。

nano 命令可以打开指定文件进行编辑,默认情况下它会自动断行,即在一行中输入过长的内容时自动拆分成几行,但用这种方式来处理某些文件可能会带来问题,比如Linux系统的配置文件,自动断行就会使本来只能写在一行上的内容折断成多行了,有可能造成系统不灵了。因此如果你想避免这种情况出现就加上-w选项吧。


0x01 操作说明

语法:

1
nano [选项] [[+行,列] 文件名]...

选项:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
-h, -?         --help                  显示此信息
+行,列 从所指列数与行数开始
-A --smarthome 启用智能 HOME 键
-B --backup 储存既有文件的备份
-C <目录> --backupdir=<目录> 用以储存独一备份文件的目录
-D --boldtext 用粗体替代颜色反转
-E --tabstospaces 将已输入的制表符转换为空白
-F --multibuffer 启用多重文件缓冲区功能
-H --historylog 记录与读取搜索/替换的历史字符串
-I --ignorercfiles 不要参考nanorc 文件
-K --rebindkeypad 修正数字键区按键混淆问题
-L --nonewlines 不要将换行加到文件末端
-N --noconvert 不要从 DOS/Mac 格式转换
-O --morespace 编辑时多使用一行
-Q <字符串> --quotestr=<字符串> 引用代表字符串
-R --restricted 限制模式
-S --smooth 按行滚动而不是半屏
-T <#列数> --tabsize=<#列数> 设定制表符宽度为 #列数
-U --quickblank 状态行快速闪动
-V --version 显示版本资讯并离开
-W --wordbounds 更正确地侦测单字边界
-Y <字符串> --syntax=<字符串> 用于加亮的语法定义
-c --const 持续显示游标位置
-d --rebinddelete 修正退格键/删除键混淆问题
-i --autoindent 自动缩进新行
-k --cut 从游标剪切至行尾
-l --nofollow 不要依照符号连结,而是覆盖
-m --mouse 启用鼠标功能
-o <目录> --operatingdir=<目录> 设定操作目录
-p --preserve 保留XON (^Q) 和XOFF (^S) 按键
-q --quiet 沉默忽略启动问题, 比如rc 文件错误
-r <#列数> --fill=<#列数> 设定折行宽度为 #列数
-s <程序> --speller=<程序> 启用替代的拼写检查程序
-t --tempfile 离开时自动储存,不要提示
-u --undo 允许通用撤销[试验性特性]
-v --view 查看(只读)模式
-w --nowrap 不要自动换行
-x --nohelp 不要显示辅助区
-z --suspend 启用暂停功能
-$ --softwrap 启用软换行
-a, -b, -e,
-f, -g, -j (忽略,为与pico 相容)

nano 编辑器快捷键

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
移动光标:使用用方向键移动。
选择文字:按住鼠标左键拖到。

#常用快捷键
CTRL+G #命令帮助
CTRL+O #保存所做更改以及另存为;
CTRL+c #取消返回。
CTRL+C #说明目前光标所处的行数与列数等信息;
CTRL+X #关闭当前文件缓冲区 / 离开 nano 退出时候会询问是否需要保存修改,输入Y确认保存,输入N不保存
CTRL+R #从其它文件中读取字符串到文件中

CTRL+K #剪贴(光标行)
CTRL+U #粘贴
CTRL+6 #+s加上下左右键选择操作范围,然后加上上面的键进行复制或者剪贴
ALT+6 #复制(光标行)
ALT+U #撤销

Ctrl+W #然后输入搜索的关键字,回车确定将会定位到第一个匹配的文本
Alt+W #定位到下一个匹配的文本

Ctrl+_ # 可直接输入行号放光标快速的移动
Alt + Y # 校正语法功能开启或者关闭(单击开在单击关)
Alt + M # 支持鼠标移动光标

^J (F4) #对齐当前段落
^A #跳至当前行首
^E #跳至当前行尾

Ctrl+Y #翻页到上一页
Ctrl+V #翻页到下一页
Ctrl+C #显示游标位置[ 行 21/25 (84%),列 1/1 (100%),字符 347/354 (98%) ]


0x02 基础使用

示例1.启动换行以及不换行使用;

1
2
3
4
5
#软换行打开
nano -$ data.json

#取消换行
nano -w data.json