一、vim编辑器
1.vim的三种模式
- 正常模式:以vim进入某个文档就是正常模式,这是默认的。可以移动光标,粘贴复制数据。
- 编辑模式:在正常模式下按下i、I、o、O等字母后可以进入编辑模式
- 命令行模式:可以提供相关指令,读取、保存、离开vim、显示行号等。

2.快捷键使用案例:
序号 | 作用 | 命令 |
1 | 拷贝当前行 | yy |
2 | 拷贝当前行向下3行 | 3yy |
3 | 粘贴 | p |
4 | 删除当前行 | dd |
5 | 删除当前3行 | 3dd |
6 | 查找某个字符(命令行模式下) | /关键字符 |
7 | 设置行号(命令行模式下) | set nu |
8 | 取消行号(命令行模式下) | set nonu |
9 | 到文档最底部 | shift + g |
10 | 到文档顶部 | shift + GG |
11 | 保存退出 | wq |
12 | 强制保存退出 | wq! |
13 | 退出(提示有修改) | q |
14 | 强制退出(不保存退出) | q! |
二、常用指令
指令、语法 | 功能 | 选项、示例 | 备注 |
文件目录类 | |||
pwd | 显示当前目录的绝对路径 | ||
ls [选项] [目录或文件] | 查看当前目录下的内容内容信息 | ls -a:显示当前目录下的所有内容 ls -l:以列表形式显示所有内容 | |
cd [参数] | 切换到指定目录 | cd~ OR cd :回到家目录 cd.. :回到上一级目录 | |
mikdir [选项] 目录 | 创建目录 | mkdir -p 目录 :创建多级目录 | |
rmdir [选项] 目录 | 删除空目录 | rmdir /home/config :删除/home/config这个空目录 rmdir -rf /home/config :删除非空目录/home/config | 如果目录非空,则rmdir无法删除。需要使用rmdir -rf |
touch 文件名称 | 创建空文件 | touch test.txt:创建空文件test.txt | |
cp [选项] source dest | 拷贝文件到指定目录 | cp -r /home/aaa /home/bbb :将aaa文件夹递归拷贝到bbb下
cp /home/aaa.txt /home/bbb:将aaa.txt拷贝到bbb下 | |
rm [选项] 文件OR目录 | 删除文件或目录 | rm -r 目录 :递归删除整个文件夹 rm -f 文件:强制删除文件不提示 | |
mv | 移动文件、目录或者重命名 | mv oldNameFile newNameFile :重命名 mv 文件名称 目录 :移动文件 | |
cat [选项] 文件 | 查看文件内容,以只读方式打开 | cat -n 文件:显示行号 | cat只能浏览文件,不能修改文件,为了浏览方便,一般会带上管道命令 | more cat 文件名 | more |
more 文件 | 全屏按页显示文本文件的内容 | 该指令打开文件后有如下快捷键: space:向下翻页 enter:向下翻一行 q:离开该文件,不再显示内容 ctrl + F:向下滚动一屏 ctrl + B:向上滚动一屏 =:输出当前行号 :f:输出文件名和当前行行号 | |
less 文件 | 分屏查看文件内容 | 该指令打开文件后有如下快捷键: space:向下翻页 pagedown:向下翻一页 pageup:向上翻一页 q:离开该文件,不再显示内容 /字符串:向下搜寻字符串,n:向下查找,N:向上查找 ?字符串:向上搜寻字符串,n:向下查找,N:向上查找 | 功能与more类似,但比more更加强大,less显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对大型文件具有较高的效率。 |
echo [选项] [输出内容] | 输出内容到控制台 | echo $PATH:输出当前的环境路径 | |
head [选项] 文件 | 显示文件开头内容(默认10行) | head 文件:显示文件头10行内容 head -n20 文件:显示文件头20行内容 | |
tail [选项] 文件 | 输出文件尾部内容(默认10行) | tail 文件:查看文件后10行 tail -n20 文件:查看文件后20行 tail -f 文件:实时追踪该文档的所有更新 | |
时间日期类 | |||
date | 显示当前时间 | date : date +%Y: date +%m: date +%d: date "+%Y-%m-%d %H:%M:%S":显示年月日时分秒 | |
date -s 时间字符串 | 设置当前日期 | date -s “2020-12-25 10:10:10” | |
cal [选项] | 查看日历 | cal:查看当前日历 cal 2020:显示2020日历 | |
搜索查找类 | |||
find [目录] [选项] | 搜索指定目录下的文件 | 选项示例: find /home -name test.txt:查找/home下的test.txt文件(按文件名查找) find /home -size +20M:查找home目录下大于20M的文件 (+n 大于,n小于,-n 等于) find /home -user nobody:查找指定用户名nobody的文件 | |
grep [选项] 查找内容 文件 | grep:过滤查找 | :管道符,将前一个命令的处理结果传递给后面的命令处理。 | 选项: -n :显示匹配行及行号 -i:忽略大小写 示例: cat hello.txt | grep -n yes :在hello.txt中查找"yes"所在行及行号 | |
压缩解压类 | |||
gzip 文件 gunzip 文件.gz | 压缩文件为*.gz文件 解压文件 | ||
zip [选项] xxx.zip 文件/目录 unzip [选项] xxx.zip | 压缩文件/文件目录为zip 解压zip文件 | zip -r test.zip /home/:将home下的所有的文件压缩为test.zip unzip -d /home/ test.zip:将test.zip解压到home下 | |
tar [选项] XXX.tar.gz | 打包文件为.tar.gz格式 | 选项: -c 产生.tar打包文件 -v 显示详细信息 -f 指定打包后的文件名 -z 打包同时压缩 -x 解压、包.tar文件
示例: tar -zxvf 文件名 |