""" linux_editoer vi编辑器 vim编辑器 nano编辑器 ed编辑器 pico编辑器 gedit图形编辑器 note: txt文档通用说明 '#!' - 主标题 '##' - 子标题 '-/-' - 子事项 '---' - 事项说明 '-1-' - 详细事项 '# 1.' - 要点事项说明 'note:' - 注意事项 note: 参考资料 --- temp """ #! linux_editoer ## vi编辑器 -/- vi的三种运行模式 -1- 普通模式 --- 进入vi之后就是普通模式(这是默认模式);在这个模式中,你可以使用"上下左右"按键来移动光标,你可以使用"d"或"dd"来处理文件内容,也可以使用"yy"和"p"来处理文件的内容; # 1. .d: 删除单个字符 # 2. dd:删除整行 # 3. yy:复制整行 # 4. p: 粘贴 -2- 插入模式 --- vi的插入模式可以从普通模式按"i"进入,若要退出普通模式则按键盘左上角的"Esc"按键 -3- 末行模式 --- vi的命令行模式可以从普通模式按":"进入,末行模式的常用命令如下 # 1. :w -- 将编辑的内容保存 # 2. :w! -- 强制保存 # 3. :q -- 退出vi # 4. :q! -- 若修改过文件则不保存强制退出 # 5. ZZ -- 若文件没修改,则不保存退出,若修改,则保存退出 # 6. :w fn -- 另存为新文件fn # 7. :set nu -- 显示行号 # 8. :set nonu -- 取消显示行号 -/- vi命令常用 --- vi filename: (普通模式)打开新建文件filename --- vi -r filename: (普通模式)打开vi编辑时发生系统崩溃时的文件filename,并恢复它 --- G: (普通模式下光标定位,n值未填写默认当前位置)将光标一直最后一行 --- n^: (普通模式下光标定位,n值未填写默认当前位置)将光标移至第n行行首 --- n+: (普通模式下光标定位,n值未填写默认当前位置)将光标下移n行 --- n-: (普通模式下光标定位,n值未填写默认当前位置)将光标上移n行 --- n$: (普通模式下光标定位,n值未填写默认当前位置)将光标移至n行尾 --- 0: (普通模式下光标定位,n值未填写默认当前位置)将光标移到所在行的行首 --- n<空格>: (普通模式下光标定位,n值未填写默认位置)将光标向右移动n个字符 --- n<回车>: (普通模式下光标定位,n值未填写默认当前位置)将光标向下移动n行 --- /str: (普通模式下字符搜索)向光标下查找一个名为str的字符串 --- ?str: (普通模式下字符搜索)向光标上查找一个名为str的字符串 --- n: (普通模式下字符搜索)英文按键n,代表重复前一个查找的操作 --- N: (普通模式下字符搜索)英文按键N,与n相反,为方向前一个查找操作 --- x: (普通模式下复制删除粘贴)删除光标处的字符 --- dw: (普通模式下复制删除粘贴)删除一个光标后单词 --- db: (普通模式下复制删除粘贴)删除光标前的一个词 --- dd: (普通模式下复制删除粘贴)删除光标所在行 --- dG: (普通模式下复制删除粘贴)删除光标位置到最后一行的位置 --- d$: (普通模式下复制删除粘贴)删除光标位置到当前行的末尾的内容 --- nx: (普通模式下复制删除粘贴)删除从光标开始向右的n个字符 --- ndw: (普通模式下复制删除粘贴)删除n个指定的单词 --- ndb: (普通模式下复制删除粘贴)删除所在位置之前的n个词 --- ndd: (普通模式下复制删除粘贴)删除当前行及其后n-1行的内容 --- d1G: (普通模式下复制删除粘贴)删除光标所在位置到第一行的内容 --- yy: (普通模式下复制删除粘贴)复制当前行到缓冲区 --- nyy: (普通模式下复制删除粘贴)将当前开始的n行开始复制到缓冲区 --- yG: (普通模式下复制删除粘贴)将当前开始光标位置到最后一行的内容复制到缓冲区 --- y1G: (普通模式下复制删除粘贴)将当前光标位置到第一行的内容复制到缓冲区 --- p: (普通模式下复制删除粘贴)将缓冲区的内容写到光标所在的位置 --- u: (普通模式下复制删除粘贴)撤销前一次操作,仅能撤销一次 ## vim编辑器 --- vim是vi的升级版,vi拥有的功能vim都拥有,可以使用vim编辑更清晰 --- vim编辑器有4种模式,分别是命令模式\编辑模式或输入模式\末行模式\可视化模式; -1- 命令模式(普通模式): 使用VIM编辑器时,默认处于命令模式;在该模式下可以移动光标位置,可以通过快捷键对文件内容进行复制\粘贴\删除等操作; -2- 编辑模式或输入模式: 在命令模式下输入小写字母a或小写字母i即可进入编辑模式,在该模式下可以对文件的内容进行编辑 -3- 末行模式: 在命令模式下输入冒号:即可进入末行模式,可以在末行输入命令来对文件进行查找\替换\保存\退出等操作 -4- 可视化模式(了解): 可以做一些列选操作(通过方向键选择某些列的内容) -/- vim命令的运行模式 -1- 命令模式(普通模式) --- 普通模式下,hjkl 等同于←↓↑→的作用 # 1.复制\粘贴\删除 --- nyy: 从光标所在当前行开始复制n行到缓冲区(n值未填写默认当前位置) --- ndd: 从光标所在当前行开始删除剪切n行缓冲区(n值未填写默认当前位置,若未粘贴内容则为删除) --- p: 粘贴缓冲区内容到当前行 --- D: 删除光标所在当前行内容(使之成为空白行) # 2.撤销\恢复操作 --- u: 撤销操作 --- ctrl + r: 恢复(取消)之前的撤销操作 # 3.光标行间移动\行内移动 --- nG: 将光标移动到n行行首 --- gg: 移动到第一行行首 --- GG: 移动到第末尾行行首 --- ctrl + b (before) 或 PgUp: 向上翻屏 --- ctrl + f (after) 或 PgDn: 向下翻屏 --- ctrl + u (up): 向上翻半屏 --- ctrl + d (down): 向下翻半屏 --- w: 到下一个单词的开头 --- e: 到下一个单词的结尾 --- W: 到下一个单词的开头 --- E: 到下一个单词的结尾 --- g_: 到本行最后一个非blank字符 --- fa: 到下一个为a的字符处,也可以用fc找到下一个字符c --- t,: 到逗号前的第一个字符,逗号也可以换成其他字符 --- 3fa: 在当前行查找第三个a --- F和T: 作用同f和t,只是查找方向相反 --- dt": 删除下一个双引号前的所有内容 --- %: 移动到匹配成对括号上,包括(\[\{(注意:要先将光标移动到括号上,用于判断) --- *和#: 移动到下一个(*)或上一个(#)与当前光标所在单词匹配的单词 --- H/L:移动到当前屏幕的第一行/最后一行 # note: --- r/R:替换,区别在于r仅替换一个字符,R一直替换到按下Esc才停止(r替换未尝试成功) -2- 编辑模式或输入模式 --- 在命令模式中,键盘输入i\a即可进入命令模式; --- 命令模式 + i: insert缩写,代表在光标之前插入内容 --- 命令模式 + a: append缩写,代表在光标之后插入内容 --- 编辑模式中,直接按Esc,即可从编辑模式退出到命令模式 --- i: 光标前插入 --- I: 光标所在行行首插入 --- a: 光标后插入 --- A: 光标所在行末尾插入 --- o: 插入一行在当前光标行的行下 --- O: 插入一行在当前光标行的行上 -3- 末行模式 # 1.查找 --- /str1: 查找字符串str1 # 2.替换 --- :s/str1/str2/ -- 将光标所在行第一个str1字符串替换成str2 --- :s/str1/str2/g -- 将光标所在行str1字符串替换成str2 --- :%s/str1/str2/ -- 将所有行行第一个str1字符串替换成str2 --- :%s/str1/str2/g -- 将所有行行str1字符串替换成str2 --- :n1,n2s/str1/str2/g -- 将n1行到n2行之间的str1替换为str2 --- :1,$s/str1/str2/g -- 将全文中的str1替换为str2 --- :1,$s/str1/str2/gc -- 与上个命令相同,但需要用户确认替换 # 3.文件打开或者命令执行 --- :e  -- 打开一个文件 --- :w -- 按指定位置保存文件,默认保存到当前  --- :saveas -- 另存为指定文件 --- :wq -- 保存并退出 --- :qa! -- 强制退出所有正在编辑的文件 --- :e! -- 将文件还原为最初的状态 --- :!command -- 临时执行一条shell指令 # number.常用 --- :noh -- 取消高亮 --- :set paste -- 粘贴数据之前,输入命令开启paste模式(防止粘贴内容变乱) --- :set nopaste -- 粘贴完毕后,输入命令关闭paste模式 --- :set nu -- 显示行号 --- :set nonu -- 取消行号 --- :x -- 在文件没有修改的情况下,表示直接退出 --- :syntax on -- 开启代码着色功能 --- :syntax off -- 关闭代码着色功能 -4- 可视化模式 --- 命令模式中,直接按ctrl + v(可视块)或V(可视行)或v(可视),然后按下↑ ↓ ← →方向键来选中需要复制的区块,按下y 键进行复制(不要按下yy),最后按下p 键粘贴 --- 退出可视模式按下Esc -/- 扩展 # 1.多文件编辑 --- 通常用于将一个文件的部分内容复制到另一个文件去时或需要多文件内容相互对照的情况下 --- vi 文件名1 文件名2 ...... --- :n -- 表示查看或编辑下一个文件 --- :N -- 表示查看或编辑上一个文件 --- :files -- 显示当前打开的所有文件的编号 # 2.多窗口变换 --- vi在字符界面下的一种特殊应用形式,表现为 在一个终端上同时显示两个文件或同时显示一 个文件的不同段落,为用户查看资料、编写程序提供了便利 --- :sp [filename] --- ctrl+w, j/k表示下/上移一个窗口 --- ctrl+w, q表示退出 -/- 常用 --- 如果文件已存在,则直接打开;如果文件不存在,则vim编辑器会自动在内存中创建一个新文件 ## nano编辑器 ## ed编辑器 ## pico编辑器 ## gedit图形编辑器