文章结构
1.帮助指令
1.1 man
案例:查看 ls 命令的帮助信息
1.2 help
案例:查看 cd 命令的帮助信息
1.3 man 和 help 的区别
help 是内部命令的帮助,比如cd
man 是外部命令的帮助,比如ls
2.文件目录指令
2.1 pwd 指令
功能描述:显示当前工作目录的绝对路径
案例:显示当前工作目录的绝对路径
2.2 ls 指令
功能描述:查看当前目录的内容
选项:
- l 以列表格式显示
- a 显示隐藏文件
案例1:直接显示home 目录下的内容
案例2:以列表显示home 目录下的内容
案例3:以列表显示home 目录下的所有内容
2.3 cd 指令
功能描述:切换到指定目录
案例1:通过绝对路径 从 /home 目录下切换到 /opt/tmp目录
案例2:通过相对路径 从 /home 目录下切换到 /opt/tmp目录
2.4 目录的创建与删除 mkdir rmdir
2.4.1 mkdir:创建单级目录
- p 创建多级目录
案例1:在 /home 目录下创建 a文件夹
案例2:在 /home 目录下创建 /home/b/c 文件夹
2.4.2 rmdir 删除空目录
删除空目录,如果目录非空则无法删除
案例1:删除目录 a
2.5 touch指令
功能描述 : 创建空文件
案例:创建a.txt
2.6 cp 拷贝指令
cp 指令拷贝文件到指定目录
cp [选项] source dest
-r :递归复制整个文件夹
案例1 : 将/home目录下的 a.txt 复制到 /root 目录下
案例2 : 将/home/a文件夹 复制到/root目录下
如果目标文件夹下有同名文件,如想忽略提醒,请使用\cp指令
2.7 rm 删除指令
rm 移除文件或文件夹
-r 递归删除整个文件夹
-f 强制删除不提示
案例1:将 /home/a.txt 文件删除
案例2 :不提醒直接删除/home/a.txt 文件
案例3 : 递归强制删除 /home/a 文件夹
2.8 mv 移动指令(剪切或重命名)
mv
1.移动文件或目录
2.对文件重命名
基本语法
mv oldNameFile newNameFile (功能描述:重命名)
mv /temp/movefile /targetFolder (功能描述:移动文件)
案例1 : 将 /home/aaa.txt 重命名为 bbb.txt
案例2 : 移动 bbb.txt 到 /root目录下
2.9 查看指令
2.9.1 cat指令
cat 查看文件内容,是以只读的方式打开
-n 显示行号
案例1 : 直接查看 a.txt 文件
案例2 : 直接查看 a.txt 文件,并且显示行号
2.9.2 more指令
more 指令是一个基于 VI 编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more 指令中内置了若干快捷键。
案例1 : 查看 /etc/profile 文件内容
快捷键
2.9.3 less指令
less 指令用来分屏查看文件内容,它的功能与 more 指令类似,但是比 more 指令更加强大,支持各种显示终端。less 指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
快捷键
案例1 : 通过 less 查看 /etc/profile 文件
2.10 > 输出重定向 与 >> 追加指令
> 输出重定向:内容 A > 文件 B (覆盖文件B的原内容)
案例1:将 home 列表的内容按列的形式写入 a.txt 中
案例 2:将列表的内容追加到文件 aa.txt 的末尾
案例3 : 将 a.txt 的内容覆盖到 b.txt 中
2.11 echo 输出指令
echo 输出内容到控制台
案例1:输出环境变量,输出当前的环境路径
案例2:输出 hello world
2.12 head 指令 与 tail 指令
2.12.1 head 查看头部指令
head 用于显示文件的开头部分内容,默认情况下 head 指令显示文件的前 10 行内容
head 文件 (功能描述:查看文件头 10 行内容)
head -n 5 文件 (功能描述:查看文件头 5 行内容,5 可以是任意行数)
案例1 : 查看 /etc/profile 文件的前10行
案例2 : 查看 /etc/profile 文件的前5行
2.12.1 tail 查看尾部指令
tail 用于输出文件中尾部的内容,默认情况下 tail 指令显示文件的后 10 行内容。
基本用法:
(1)tail 文件 查看文件后10行内容
(2)tail -n 文件 查看文件的后n行内容
(3)tail -f 文件 实时追踪文件的跟新(常用)
案例 1 :查看mycal .txt 的后10 行内容
案例 2 :查看mycal .txt 的后 5 行内容
案例 3 :实时追踪 mycal.txt 内容的更新
此时在vm软件中往mycal.txt 中追加内容
返回xshell查看内容更新
2.13 ln 软连接指令
ln 软连接 也叫符号连接 类似于windows里面的快捷方式,主要存放了连接其他文件的路径
ln -s [原文件或目录] [软链接名]
案例1:创建一个软连接linkToRoot 连接到 /root 目录
测试:
注意:软连接切换目录后依旧显示的是软连接的目录 ,使用pwd指令也是一样。
2.14 history指令
history :查看已经执行过历史命令,也可以执行历史指令
案例1 : 查看已经执行过的指令
案例 2: 显示最近使用过的 10 个指令。
案例3: 执行指定编号已经执行过的指令
3.时间日期类指令
3.1 date 日期指令
date 指令-显示当前日期
1) date 显示当前时间
2)date +%Y 显示当前年份
3)date +%m 显示当前月份
4)date "+%Y-%m-%d %H:%M:%S" 显示年月日 时分秒
date -s 字符串时间 格式为"YY-mm-dd HH:MM:SS"
3.2 cal 日历指令
cal 查看日历的指令
cal 年份 查看指定年份的日历
案例1:查看本月日历
案例2:查看2020年的日历
4.搜索查找类指令
4.1 find指令
find 指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端。
基本语法:find [搜索范围] [选项]
1.-find 目录 -name 按照指定文件名或者通配符查询文件
2.-user 查找属于指定用户的所有文件
3.-size 根据文件大小进行筛选查找
案例 1: 按文件名:根据名称查找/home 目录下的 hello.txt 文件
案例 2: 按文件名:查找/home 下的txt文件
案例3:按用户 查找/home下root用户的文件
案例4:查找 / 目录下 大小超过20M的文件
4.2 locate指令
locate 指令可以快速定位文件路径。locate 指令利用事先建立的系统中所有文件名称及
路径的locate 数据库实现快速定位给定的文件。Locate 指令无需遍历整个文件系统,查询
速度较快。为了保证查询结果的准确度,管理员必须定期更新 locate 。
由于 locate 指令基于数据库进行查询,所以第一次运行前,必须使用 updatedb 指令
创建 locate 数据库。
4.3 grep指令和管道符号 |
grep 过滤查找 , 管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理。
基本语法 : grep [选项] 查找内容 源文件
-n 显示匹配行及行号
-i 忽略字母大小写
案例1:查找hello.txt 中的 yes
案例2:利用管道流查找hello.txt 中的 yes
5.压缩与解压缩指令
5.1 gzip 和 gunzip
gzip 用于压缩文件, gunzip 用于解压文件
gzip 文件 (功能描述:压缩文件,只能将文件压缩为*.gz 文件)
gunzip 文件.gz (功能描述:解压缩文件命令)
案例1:压缩a.txt
案例2:解压缩a.txt
注意:gzip 和 gunzip 压缩的解压缩操作,不会保留源文件
5.2 zip 和 unzip
zip 用于压缩文件, unzip 用于解压的,这个在项目打包发布中很有用
zip [选项] XXX.zip 将要压缩的内容(功能描述:压缩文件和目录的命令)
-r 递归压缩,即压缩目录
unzip [选项] XXX.zip (功能描述:解压缩文件)
-d 指定解压的文件夹
案例1:压缩/home/a文件夹 为test.zip
案例2:解压缩test.zip到/opt/tmp目录下
5.3 tar
tar 指令 是打包指令,最后打包后的文件是 .tar.gz 的文件。
tar [选项] XXX.tar.gz 打包的内容 (功能描述:打包目录,压缩后的文件格式.tar.gz)
案例1:压缩多个文件,将 /home/a1.txt 和 /home/a2.txt 压缩成 a.tar.gz
案例2:将/home 文件夹压缩成myhome.tar.gz
案例 3: 将 a.tar.gz 解压到当前目录
案例 4: 将 myhome.tar.gz 解压到 /opt/ 目录下