文章目录

  • 一、Nano
    • 1.1、基础命令
    • 1.2、快捷操作
    • 1.3、配置文件
  • 二、Vim
    • 2.1、四大模式
    • 2.2、基础命令
    • 2.3、标准操作
    • 2.4、高级操作
    • 2.5、配置文件

Linux 终端的文本编辑器中,较著名的有:Nano、Vim、Emacs。其它文本编辑器还有 Gedit、Sublime,Atom 等等。

一、Nano

1.1、基础命令

  • nano:打开 nano 编辑器。

  • nano 文件名:打开文件,文件不存在则创建。

  • 参数

    • nano -m 文件名:激活鼠标。
    • nano -i 文件名:激活自动缩进。
    • nano -A 文件名:激活智能 Home 键,根据行首处有无缩进来跳转。
    • nano -miA 文件名:三者组合。

1.2、快捷操作

  • Esc X:显示\隐藏帮助文档。

  • Ctrl G:帮助文档。

  • Ctrl X:退出。

  • Ctrl O:保存。

  • Ctrl J:对齐当前段落。

  • Ctrl R:读取文件。

  • Ctrl W:查找。

  • Ctrl Y:上一页。

  • Ctrl V:下一页。

  • Ctrl K:剪切当前行。

  • Ctrl U:粘贴 。

  • Ctrl C:光标位置。

  • Ctrl T:拼写检查。

  • Ctrl \:替换。

1.3、配置文件

Linux 中的配置文件大多以点开头,以 “rc”(run command)结尾。许多程序启动时,都需要 “rc” 后缀的初始文件或配置文件。

Nano 有一个 .nanorc 配置文件,用于设置 Nano 的一些选项,每个用户都可以在自己家目录 /home/用户名/ 创建 .nanorc 配置文件。

如果家目录没有 .nanorc ,则 nano 会使用全局的配置文件。

  • 个人 Nano 配置,cd /home/用户名nano .nanorc
# 激活鼠标
set mouse
# 激活自动缩进
set autoindent
# 激活智能Home键
set smarthome
  • 全局 Nano 配置,sudo nano /etc/nanorc ,该配置文件中有 Nano 的所有配置,只需将 set 配置语句前 # 号去掉,即可激活对应配置。

二、Vim

Vi iMproved,Vi 文本编辑器的进阶版。

2.1、四大模式

  • 交互模式:Interactive Mode, Vim 默认模式,执行剪切、粘贴、撤销等操作。
  • 插入模式:Insert Mode,按 i、a、o (I、A、O) 键进入,执行输入文本操作。
  • 命令模式:Command Mode,也称为底行命令模式,执行保存、退出、配置等操作。
  • 可视模式:Visual Mode,高亮选取文本后的交互模式。

2.2、基础命令

  • vim:打开 Vim 编辑器。

  • vim 文件名:打开文件,文件不存在则创建。

  • 交互模式(Esc 键进入交互模式)

    • Esc:进入交互模式。
    • ↑ | k:向上移动一个字符。
    • ↓ | j:向下移动一个字符。
    • ← | h:向左移动一个字符。
    • → | l:向右移动一个字符。
    • 0 | home:光标移至当前行行首。
    • $ | End:光标移至当前行行尾。
    • w:一个单词一个单词的移动,以空格区分。
  • 插入模式(先按 Esc 键进入交互模式)

    • i:在光标前插入。
    • I:在光标当前行首插入。
    • a:在光标后插入。
    • A:在光标当前行尾插入。
    • o:在光标下插入一行。
    • O:在光标上插入一行。
    • s:删除光标所在字符并在光标前插入。
    • S:删除光标所在行并插入。
  • 命令模式(先按 Esc 键进入交互模式)

    • ::进入命令模式。
    • :w [文件名]:保存。
    • :wq | :x [文件名]:保存并退出。
    • :q:退出。
    • :q!:不保存退出。
    • 选项参数
      • :set nu:显示行号。
      • :set nonu:隐藏行号。
  • 可视模式(先按 Esc 键进入交互模式)

    • v:字符可视模式。
    • V:行可视模式。
    • Ctrl v:块可视模式。
    • 以上相当于批量选中字符,配合删除复制修改等操作。
    • u:选中字符转小写。
    • U:选中字符转大写。

2.3、标准操作

在交互模式下操作。

  • 删除

    • x:删除光标处字符。
    • 数字x:删除从光标处字符开始,往后数字个的字符。
    • dd:删除光标所在行 (剪切)。
    • 数字dd:删除从光标所在行,往后数字行字符。
    • dw:光标移至单词首字母删除单词,若光标在单词中间则删除光标处及后面所有字符。
    • 数字dw:删除从光标处单词开始,往后数字个单词。
    • d0:删除从光标处到行首的所有字符。
    • d$:删除从光标处到行末的所有字符。
  • 复制

    • yy:复制光标所在行。
    • yw:复制一个单词。
    • y0:复制从光标所在处到行首的所有字符。
    • y$:复制从光标所在处到行末的所有字符。
  • 粘贴

    • p:粘贴到光标后面。
    • 数字p:粘贴数字次。
  • 替换

    • r新字符:替换光标处字符。
    • R:替换模式,替换光标处开始任意个字符,Esc 键退出替换模式。
  • 撤销

    • u:撤销。
    • 数字u:撤销数字次。
    • Ctrl r:取消撤销、返回。
  • 跳转

    • 数字G | 数字gg:跳转指定数字行。
    • gg:跳转首行。
    • G:跳转底行。

2.4、高级操作

在交互模式下操作。

  • 查找

    • /:从当前光标处开始,向文件尾搜索;输入查找的字符串,回车,光标跳至匹配处;n 下一个匹配,N 上一个匹配。
    • ?:从当前光标处开始,向文件头搜索;其它与 / 一样。
  • 替换

    • :s/旧字符串/新字符串:替换光标所在行第一个匹配的字符串。
    • :s/旧字符串/新字符串/g:替换光标所在行所有匹配的字符串。
    • :#,# s/旧字符串/新字符串/g:替换第#行至第#行所有匹配的字符串。
    • :%s/旧字符串/新字符串/g:替换所有匹配的字符串。
  • 合并

    • :r 文件名:光标处插入一个文件的内容。
  • 分屏

    • :sp 文件名:横向分屏。
    • :vsp 文件名:垂直分屏。
    • Ctrl w w:切换分屏,同一行默认从上往下,从左往右。
    • Ctrl w 方向键:按指定方向切换分屏。
    • Ctrl w +:扩大当前分屏。
    • Ctrl w =:均匀分配所有分屏比例。
    • Ctrl r:调换分屏位置。
    • Ctrl R:反向调换分屏位置。
    • Ctrl w q|c:关闭当前分屏。
    • :quit | :close:关闭当前分屏。
    • Ctrl w o:保留当前分屏,关闭其它分屏。
    • :only:保留当前分屏,关闭其它分屏。
  • 其它

    • :!命令:运行 Vim 外部命令 (终端命令),按回车或输入命令来继续。

2.5、配置文件

  • 配置方式

    • 激活或不激活选项参数,文档:http://vimdoc.sourceforge.net/htmldoc
    • 安装插件,官网:https://www.vim.org/scripts/index.php
  • 短暂配置:打开 Vim 后,在命令模式下激活选项参数,这些激活都是一次性的,再次打开 Vim 就没有了。

    • :set 选项名 :激活配置
    • :set 选项名=数值:激活配置
    • :set no选项名:取消配置
  • 永久配置:修改了配置文件后,须保存并退出文件,再重新运行 Vim,使用最新配置。

    • 全局 Vim 配置,/etc/vimrc
    • 个人 Vim 配置,cp /etc/vimrc ~/.vimrc
  • 常用选项

    • syntax on:(默认) 语法高亮,根据不同的文件类型。
    • set number:显示行号。
    • set showcmd:显示当前命令。
    • set ignorecase:查找时忽略大小写。
    • set mouse=a:激活鼠标,用鼠标选择一段文本则激活可视模式。

vim /home/.vimrc
可能有的选项参数已经存在也已经被激活,前面没有 " (双引号)。
可能有的选项参数已经存在但没有被激活,前面有 " (双引号)。
可能有的选项参数不存在,添加即可。

if v:lang =~ "utf8$" || v:lang =~ "UTF-8$"set fileencodings=ucs-bom,utf-8,latin1
endifset nocompatible        " Use Vim defaults (much better!)
set bs=indent,eol,start         " allow backspacing over everything in insert mode
"set ai                 " always set autoindenting on" than 50 lines of registers
set history=50          " keep 50 lines of command line history
set ruler               " show the cursor position all the time"自定义配置================================
"                                         =
set number              "显示行号        =
set showcmd             "显示当前命令     =
set ignorecase          "查找时忽略大小写 =
set mouse=a             "激活鼠标        =
"                                         =
"==========================================" Only do this part when compiled with support for autocommands
if has("autocmd")augroup redhatautocmd!" In text files, always limit the width of text to 78 characters" autocmd BufRead *.txt set tw=78" When editing a file, always jump to the last cursor positionautocmd BufReadPost *\ if line("'\"") > 0 && line ("'\"") <= line("$") |\   exe "normal! g'\"" |\ endif" don't write swapfile on most commonly used directories for NFS mounts or USB sticks" start with spec file templateautocmd BufNewFile *.spec 0r /usr/share/vim/vimfiles/template.specaugroup END
endifif has("cscope") && filereadable("/usr/bin/cscope")set csprg=/usr/bin/cscopeset csto=0set cstset nocsverb" add any database in current directoryif filereadable("cscope.out")cs add $PWD/cscope.out" else add database pointed to by environmentelseif $CSCOPE_DB != ""cs add $CSCOPE_DBendifset csverb
endif" Switch syntax highlighting on, when the terminal has colors
" Also switch on highlighting the last used search pattern.
if &t_Co > 2 || has("gui_running")syntax onset hlsearch
endiffiletype plugin onif &term=="xterm"set t_Co=8set t_Sb=^[[4%dmset t_Sf=^[[3%dm
endif" Don't wake up system with blinking cursor:
" http://www.linuxpowertop.org/known.php
let &guicursor = &guicursor . ",a:blinkon0"
  • 其它配置

    • Github:https://github.com/amix/vimrc
    • Github 搜索:https://github.com/search?q=vimrc

CentOS — 文本编辑器相关推荐

  1. CentOs 7 中vim文本编辑器的下载及使用

    一. vim文本编辑器的下载 1. 在Linux中输入vim命令,若提示command not found,则表示还未安装vim编辑器: 2. 输入命令[yum -y install vim], 即可 ...

  2. vb.net中report不显示中文_Ubuntu中vi文本编辑器的使用

    最近在使用ubuntu,对于一个已经熟悉centos下的vi编辑器来说,简直是太变态了,各种不习惯.下面给大家分享下Ubuntu下的vi编辑器详细用法. Ubuntu中vi文本编辑器的使用 :w !s ...

  3. linux常用文本编辑器nano/vi/vim

    Linux下有很多文本编辑器,其中系统(不管哪个分支)都会自带nano和vi这两个最基本的编辑器.vim相当于vi的升级版.这里我们依次来讲解这几个编辑器的用法. 1.nano 直接在命令行中敲入na ...

  4. Linux01-Linux文本编辑器vim编辑器深入详解22

    一.vim编辑器 1.文本编辑器,字处理器: 2.vi:Visual Interface: 3.vim:VI iMproved,是vi的增强功能: 4.全屏编辑器:vi.vim.nano; 5.vim ...

  5. linux100day(day3)--常用文本处理命令和vim文本编辑器

    今天,来介绍几个常用文本处理命令和vim文本编辑器 day3--常用文本处理命令和vim文本编辑器 col,用于过滤控制字符,-b过滤掉所有控制字符,这个命令并不常用,但可以使用man 命令名| co ...

  6. centos vim编辑器 第八节课

    centos  vim编辑器  第八节课 其他编辑器: nano gedit emacs 腾讯云上的vim版本 ~ VIM - Vi IMproved ~ ~ version 7.4.629 ~ by ...

  7. (三)Linux vi 文本编辑器,用户管理,组管理,Sudo命令,时间管理

    文章目录 具体内容 1.1 vi 文本编辑器 1.2 用户权限管理,组管理和时间管理 1.2.1 用户管理 1)保存用户信息的文件:/etc/passwd 2)保存用户密码信息的文件:/etc/sha ...

  8. vm怎么装vim_安装nginx报-bash: vm: command not found..错误提示vim文本编辑器命令没有安装...

    一.前言 关于在使用ssh客户端安装nginx的时候报"-bash: vim: command not found"错误,提示没有安装VIM文本编辑器 二.解决方法 1. 安装vi ...

  9. Linux操作系统--文本编辑器(保姆级教程)

    文本编辑器 Linux是一种文本驱动的操作系统.用户在使用Linux过程中经常需要编辑文本,比如编写脚本文件来执行几条命令行,写电子邮件,创建C语言源程学等,因此,必须熟悉至少一种文本编辑器以便高效地 ...

  10. Linux简介-远程操作-文本编辑器-1

    linux 1. Linux简介 1.2 Linux的发行版本 1.3 Linux安装 1.4Linux的目录结构 1.5 Linux的远程操作--Xshell 1.5 Linux的远程操作--FZ ...

最新文章

  1. 微服务架构实践之服务注册发现与调用
  2. 配置Fedora15 x86_32
  3. 基础练习 杨辉三角形
  4. JS每日一题:Vue中的diff算法?
  5. 开发测试服务器配置信息,node服务端中台实现及开发测试生产环境配置
  6. spring+quartz实现定时调度
  7. [转]游戏UI与flash 组件开发
  8. shell中的括号(小括号,大括号/花括号)
  9. docker build mysql,Docker创建MySQL容器的方法
  10. DirectX SDK (June 2010)安装错误S1023,解决方法
  11. RAC 修改 ASM实例名 的步骤
  12. 微信jsapi开发教程全
  13. 计算机基础知识试题和答案6,计算机基础知识试题及答案选择题(九)
  14. myline java线段类,MyLine 编写一个线段类 MyLine 联合开发网 - pudn.com
  15. 《陶哲轩教你学数学》读后感
  16. IIS网站中下载.bat文件
  17. COSO内部控制框架
  18. matlab读int16读文件_matlab读文件
  19. h3c sr6608路由器IP限速
  20. 数模算法:应用Logistic规律构建种群竞争模型

热门文章

  1. 修改scrollbars的样式
  2. pyecharts 模块的简单使用
  3. CMP是什么意思?谁能解释下?
  4. html自动弹图片,JS自动适应的图片弹窗实例
  5. 基于Python的指数基金量化投资-通过市盈率和市净率对指数估值
  6. c语言 输入两个正整数m和n,求其最小公倍数。
  7. ARTS-24 字符串互异
  8. 路由器显示DNS服务器异常,路由器dns异常怎么办
  9. 选拔人才的原则和误区
  10. 【Windows账户名修改】win10家庭版更改中文账户名