目录
vim编辑器
vim编辑器的使用
vim编辑器是linux里面的文本编辑器
文本编辑器:只能编辑纯文本文件的工具--》相当于windows的记事本
不能编辑图片,视频,音频等文件
最小化安装系统里默认没有vim,需要我们自己安装
yum install vim -y
#############################################
windows里有哪些比较好用的文本编辑工具:
1.记事本
2.写字板
3.sublime
4.notepad++
5.pycharm --》写python html等
linux里的比较好用的文本编辑工具
1.vi :是linux里字符界面的文本编辑工具
2.vim : 是vi的升级版程序,
vim - vi IMproved , a programmer's text editor
vim 是程序员的文本编辑工具:shell,c,python.php,java,ruby等
3.emacs
4.grdit --》图形界面的编辑工具
#############################################
文本编辑器的作用:
创建或修改文本文件
维护linux系统中的各种配置文件
#############################################
vi和vim的区别
vim比vi有语法高亮效果,彩色显示,命令补齐,历史记录等
任何linux里面都会安装vi编辑器
centos redhat ubuntu等linux系统都会安装vi编辑器
例:.bashrc是储存别名的文件
[root@localhost sanchuang]# vim /root/.bashrc
[root@localhost sanchuang]# cat /root/.bashrc
# .bashrc
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias lk='ls -a -l -h --color=auto'
alias c='clear'
alias mk='mkdir -p'
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
[root@localhost sanchuang]#
#############################################
linux里面编辑的文件在windows是否可以打开?
英文可以正常显示
中文在xshell里面可以显示,但是在虚拟机的字符界面里面会有中文乱码问题
vim编辑器打开记事本写的文本有乱码问题
因为windows里的记事本默认的编码和linux里面的vim编辑器编码不一样
windows记事本默认的编码是ANSI,linux里面默认是 unicode utf-8
可以更改记事本的编码,让windows和linux编码一致就行了
#############################################
windows里面的文件在linux里是否可以打开?
windows打开linux里面的文件时候,换行有问题
可以理解记事本识别vim的文本换行符号不友好
windows --》.txt 是文本文件的默认格式
linux里不重视后缀名,但也有一些规矩
电脑里存放的 1 0 编码
美国使用英文 a b c 1234 --》 ASCII
中文 --》 二进制
韩文 --》 二进制
每个国家都有自己的文字 --》 都需要转换为二进制
unicode 万国码,把全球各个国家的文字都统一编码
utf-8 --》unicode 里的一个分支‘
utf'16
python3 默认是utf-8
locale 命令 : 查看字符编码
[root@localhost lianxi]# locale
LANG=zh_CN.UTF-8
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=
#############################################
vim编辑器的模式
1.命令模式
--》一进入vim编辑器就是命令模式
无论在哪个模式里面,按esc就会返回到命令模式
yy : 复制当前行
5yy: 从当前行开始往下复制5行,包括当前行
dd : 删除当前行
dw : 删除一个单词,word
d^ : 删除光标到行首
d$ : 删除光标到行尾
5dd : 从当前行开始往下删除5行,包括当前行
p : 粘贴到下一行
P:粘贴到上一行
只有root用户可以对一些只读文件可以强制保存并且退出
#############################################
2.输入模式
--》 在命令模式驶入 i a o 等键进入输入模式
输入模式右下角会显示当前光标的行数和列数
#############################################
3.末行模式
--》 在命令模式输入 : 进入末行模式
:set nu 显示行号
: set nonu 取消行号
#############################################
4.可视模式
主要用来选择复制区块文本
在命令模式下,使用v或V可以进入可视模式
可视或者可视块模式可以复制或者删除一部分单词
选中一部分单词,然后进行操作
v 可视模式 visual --》 选择一部分
V 可视行模式 VISUAL line --》 选择行
ctrl + v 可视块模式 VISUAL block
按y复制 x或者 d 删除
按p 粘贴
另起一行,按o,再按esc,再P
#############################################
可视操作:(v)
从光标所在位置,使用上下左右方向键进行选中
按 y 复制一部分文本
按 p 是粘贴到下一行
按 P 是粘贴到上一行
按 d 是删除
然后再p就是剪切
#############################################
可视行操作:(V)
可视行操作,通过光标和上下左右键选中一行进行操作
按 y 复制一部分文本
按 p 是粘贴到下一行
按 P 是粘贴到上一行
按 d 是删除
然后再p就是剪切
#############################################
可视块操作: (ctrl +v)
通过光标和上下方向键来选中一块内容
#############################################
5.替换模式
R --》 Replace 替换
在命令模式里面按R进入替换模式
在替换模式里面,可以随意替换我们光标所在位置的字符
#############################################
光标移动
#############################################
末行模式里面跳转:
: 1 第一行
: 20 第20行
: $ 最后一行
:wq 保存且退出
:w只保存不退出
:w /lianxi/zhaojunjie.txt 另存到 /lianxi/zhaojunjie.txt
:q 退出
:q!强制退出,修改了文本也可以退出,不保存退出
:wq!
:x 退出保存
:x!强制保存并且退出
#############################################
查找替换
文件内容查找(命令模式)
/word 从上而下在文件中查找字符串“word”
?word 从下而上在文件中查找字符串“word”
n 定位下一个匹配的被查找字符串
N定位上一个匹配的被查找字符串
/huang 从上而下查找huang字符串
用 n 和 N 来定位被匹配的字符串
#############################################
文件内容查找(末行模式)
:/word 从上而下在文件中查找字符串“word”
:?word 从下而上在文件中查找字符串“word”
n 定位下一个匹配的被查找字符串
N定位上一个匹配的被查找字符串
#############################################
文件内容替换
替换操作:
在末行模式里面完成
:s 替换 substitute
例子:
将第一个xiaomi替换为redmi
:s /xiaomi/redmi
将整行的xiaomi都替换为redmi
:s /xiaomi/redmi/g
将第4-6行的xiaomi都替换为redmi
:4,6 s /xiaomi/redmi/g
将所有的xiaomi都替换为redmi
: % s /xiaomi/redmi/g
将所有的redmi都替换为xiaomi 并且有确认提示
在后面加一个c就会产生确认提示
% s /xiaomi/redmi/gc
将所有的jd都删除
:% s/jd//g
如何查找不留下痕迹
只要查找一个不存在的内容再次打开时就不会留下痕迹了
#############################################
打开新文件或读入其他文件内容
例如新建一个new.txt 文件,然后读入 /lianxi/dir10_filr10.sh
在一个文本里面打开另一个文本:
例: 打开/lianxi/new.txt
#############################################
设置tab键
默认一个tab键为8个空格
在末行模式下来修改tab键的值
:set ts=4
一个tab等于4个空格
tab size
#############################################
同时编辑多个文件
[root@localhost lianxi]# vim bajie.txt wukong.txt shifu.txt
首先会进入编辑第一个文本 bajie.txt
进入文本编辑后可以在多个文件之间复制粘贴
在末行模式里面:
:n 下一个文件
:N上一个文件
:files 查看打开的所有的文件
再末行模式里面输入:n
进入下一个文本的编辑
#############################################
tmux
tmux + vim 多窗口文本编辑器
默认最小化安装里面没有安装
需要我们自己去安装
yum install tmux -y
已加载插件:fastestmirror
Determining fastest mirrors
epel/x86_64/metalink | 6.7 kB 00:00
* base: mirrors.163.com
* epel: mirrors.tuna.tsinghua.edu.cn
* extras: mirrors.dgut.edu.cn
* updates: mirrors.163.com
base | 3.6 kB 00:00
epel | 4.7 kB 00:00
extras | 2.9 kB 00:00
updates | 2.9 kB 00:00
(1/3): epel/x86_64/updateinfo | 1.0 MB 00:00
(2/3): epel/x86_64/primary_db | 7.0 MB 00:02
(3/3): updates/7/x86_64/primary_db | 13 MB 00:10
正在解决依赖关系
--> 正在检查事务
---> 软件包 tmux.x86_64.0.1.8-4.el7 将被 安装
--> 正在处理依赖关系 libevent-2.0.so.5()(64bit),它被软件包 tmux-1.8-4.el7.x86_64 需要
--> 正在检查事务
---> 软件包 libevent.x86_64.0.2.0.21-4.el7 将被 安装
--> 解决依赖关系完成
依赖关系解决
======================================================================
Package 架构 版本 源 大小
======================================================================
正在安装:
tmux x86_64 1.8-4.el7 base 243 k
为依赖而安装:
libevent x86_64 2.0.21-4.el7 base 214 k
事务概要
======================================================================
安装 1 软件包 (+1 依赖软件包)
总下载量:457 k
安装大小:1.3 M
Downloading packages:
(1/2): libevent-2.0.21-4.el7.x86_64.rpm | 214 kB 00:00
(2/2): tmux-1.8-4.el7.x86_64.rpm | 243 kB 00:00
----------------------------------------------------------------------
总计 573 kB/s | 457 kB 00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : libevent-2.0.21-4.el7.x86_64 1/2
正在安装 : tmux-1.8-4.el7.x86_64 2/2
验证中 : tmux-1.8-4.el7.x86_64 1/2
验证中 : libevent-2.0.21-4.el7.x86_64 2/2
已安装:
tmux.x86_64 0:1.8-4.el7
作为依赖被安装:
libevent.x86_64 0:2.0.21-4.el7
完毕!
---------------------------------------------------------------------------------------------------------
进入 tmux 软件
[root@localhost lianxi]# tmux
常用格式:
注:先按ctrl +b 然后松开再按 %
ctrl+b+% 分割出来一个窗口,左右窗口
注:先按ctrl +b 然后松开再按 "
ctrl+b+" 分割出来一个窗口 上下窗口
注:先按ctrl +b 然后松开再按x
ctrl+b+x 关闭当前光标所在的窗口
注:先按ctrl +b 然后松开再按!
ctrl+b+!关闭所有小窗口
注:先按ctrl +b 然后松开再按s
ctrl+b+s 显示已有tmux列表
注:先按ctrl +b 然后松开再按方向键
ctrl+b+(方向键)调整窗口大小
ctrl+b+(方向键)上 上一个窗口
ctrl+b+(方向键)下 下一个窗口
ctrl+b+(方向键)左 左一个窗口
ctrl+b+(方向键)右 右一个窗口
exit 退出tmux软件
分割左右两个窗口
可以通过 ctrl+b+方向键来进入左右两个不同的窗口
应用:
用两个窗口来监控日志文件