1、指定运行级别
运行级别说明:
0:关机
1:单用户【找回丢失密码】
2:多用户状态没有网络服务
3:多用户状态有网络服务
4:系统未使用保留给用户
5:图形界面
6:系统重启
常用运行级别是3和5,要修改默认的运行级别可改文件
/etc/inittab 的 id:5:initdefault:这一行中的数字
运行级别示意图:
![](https://i-blog.csdnimg.cn/blog_migrate/71d24a302fe1f6b1f2f877c85f3df532.png)
2、切换到指定运行级别的指令
2.1、基本语法
init[012356]
![](https://i-blog.csdnimg.cn/blog_migrate/c48ae065132f84149031e258601f64ec.png)
2.2、应用实例
案例1:通过init来切换不同运行级别,比如动 5->3,然后关机。
init 3
init 5
init 0
2.3、面试题
如何找回root密码,如果我们不小心忘记root密码,怎么找回?
思路:进入到单用户模式,然后修改root密码。因为进入单用户模式root不需要密码就可以登录。
总结
开机->在引导时输入“回车键”->看到一个界面输入“e”->看到一个新的界面,选中第二行(编辑内核)再输入“e”->在这行最后输入 “1”,再输入 “回车键”->再次输入“b”,这时 就会进入到单用户模式。
这时,我们就进入到单用户模式,使用passwd指令来修改root密码。
3、帮助指令
3.1、介绍
当我们对某个指令不熟悉时,我们可以使用Linux提供的帮助指令来了解这个指令的使用方法。
3.2 man 获得帮助信息
-
基本语法
man【命令或配置文件】(功能描述,获得帮助信息)
-
应用实例
案例:查看ls命令的帮助信息
![](https://i-blog.csdnimg.cn/blog_migrate/e768c57754e53b149cceaf8f6ee46e67.png)
3.3 help指令
-
基本语法
help 命令(功能描述:获得shell内置命令的帮助信息)
-
应用实例
案例:查看cd命令的帮助信息
![](https://i-blog.csdnimg.cn/blog_migrate/a54f4e19418ee0f635508fc36d71db68.png)
4、文件目录类指令
4.1、pwd指令
-
基本语法
pwd (功能描述:显示当前工作目录的绝对路径)
-
应用实例
案例:显示当前工作目录的绝对路径
![](https://i-blog.csdnimg.cn/blog_migrate/9741e91bd1e51e3cf76fc74447675912.png)
4.2、ls指令
-
基本语法
ls [选项] [目录或是文件]
-
常用选项
-a: 显示当前目录所有的文件和目录,包括隐藏的。
-l: 以列表的方式显示信息
-
应用实例
案例:查看当前目录的所有内容信息
![](https://i-blog.csdnimg.cn/blog_migrate/905c681307aa903cdc78fabda5955a9a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/85a7c7be7045bb4bfc81de08b326e551.png)
4.3、cd指令
-
基本语法
cd [参数] (功能描述:切换到指定目录)
-
常用参数
绝对路径和相对路径
cd ~或者cd 回到自己的家目录
cd .. 回到当前目录的上一级目录
![](https://i-blog.csdnimg.cn/blog_migrate/9bb7781f7199beef942c0c8c958e0ecc.png)
-
应用实例
案例1:使用绝对路径切换到root目录
cd /root
案例2:使用相对路径到/root目录
这里我们需要知道该用户目前在那个目录下,才能写出这个指令,假设在/usr/lib下
cd ../../root
案例3:表示回到当前目录的上一级目录
cd ..
案例4:回到家目录
cd ~ 或 cd
4.4 mkdir指令
mkdir 指令用于创建目录(make directory)
-
基本语法
mkdir [选项] 要创建的目录
-
常用选项
-p:创建多级目录
-
应用案例
案例1:创建一个目录 /home/dog
![](https://i-blog.csdnimg.cn/blog_migrate/03f12c8143b4e283cdbeb50ebecee050.png)
案例2:创建多级目录 /home/animal/tiger
![](https://i-blog.csdnimg.cn/blog_migrate/b86281e08c043e929485cb21485e4db2.png)
4.5、 rmdir 指令
介绍
rmdir 指令删除空目录
基本语法
rmdir [选项] 要删除的空目录
应用实例
案例1:删除一个目录 /home/dog
![](https://i-blog.csdnimg.cn/blog_migrate/19ce2623733c394577a508a939f40acb.png)
使用细节
rmdir 删除的是空目录,如果目录下有内容是无法删除的。
提示:
如果需要删除非空目录,需要使用 rm -rf 要删除的目录
![](https://i-blog.csdnimg.cn/blog_migrate/00d8c19b1cc5b0c805b7774abba07dda.png)
4.6、touch指令
touch 指令创建空文件
-
基本语法
touch 文件名
-
应用实例
案例:创建一个空文件 hello.txt
![](https://i-blog.csdnimg.cn/blog_migrate/da83b091655679005feb9de7f48c08a6.png)
案例2:一次创建多个文件
![](https://i-blog.csdnimg.cn/blog_migrate/9bb2ebcf36f3a876871624eebe05e15f.png)
4.7、cp 指令 [重要]
cp 指令拷贝文件到指定目录
-
基本语法
cp [选项] source dest
-
常用选项
-r :递归复制整个文件夹
-
应用实例
案例1:将 /home/aaa.txt 拷贝到 /home/bbb目录下 【拷贝单文件】
![](https://i-blog.csdnimg.cn/blog_migrate/1e48d1584754a61d218c0154e9a94164.png)
案例2:递归复制整个文件夹,举例:将/home/test整个目录拷贝到 /home/zwj/
![](https://i-blog.csdnimg.cn/blog_migrate/4248ebb13a8b72529c50751b67bca8ff.png)
-
使用细节
强制覆盖不提示的方法 "
\cp"
![](https://i-blog.csdnimg.cn/blog_migrate/67aaa69b5247b4df2e248acc55719cc5.png)
4.8 、rm指令
rm 指令移除文件或目录
-
基本语法
rm [选项] 要删除的文件或目录
-
常用选项
-r:递归删除整个文件夹
-f:强制删除不提示
-
应用实例
案例1:将/home/aaa.txt删除
![](https://i-blog.csdnimg.cn/blog_migrate/07230a47b9061a0096fd28ac9ce9acae.png)
案例2:递归删除整个文件夹/home/bbb
![](https://i-blog.csdnimg.cn/blog_migrate/506807c4c2dc102abba4cff874a89d6f.png)
-
使用细节
强制删除不提示的方法:带上 -f 参数即可
4.9、mv指令
mv
移动文件与目录或重命名
-
基本语法
mv oldNameFile newNameFile (功能描述:重命名)
mv /temp/movefile /targetFolder (功能描述:移动文件)
-
应用实例
案例1:将/home/aaa.txt 文件 重命名为 pig.txt
![](https://i-blog.csdnimg.cn/blog_migrate/e78c5130ccac2db2b6195dd4ed014dba.png)
案例2:将/home/pig.txt 文件移动到 /root目录下
![](https://i-blog.csdnimg.cn/blog_migrate/603177f59be906460e3e5b5665918d18.png)
4.10、cat指令
cat 查看文件内容,是以只读的方式打开。
-
基本语法
cat [选项] 要查看的文件
-
常用选项
-n:显示行号
-
应用实例
案例1:/etc/profile 文件内容,并显示行号
![](https://i-blog.csdnimg.cn/blog_migrate/8f2351bfb977ba9abbacd0cf6d81d7ed.png)
-
使用细节
cat只能浏览文件,而不能修改文件,为了浏览方便,一般会带上 管道命令 "| more"
cat 文件名 | more
4.11、more指令
more 指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式暗夜显示文本文件的内容。more指令中内置了若干快捷键,详见操作说明
-
基本语法
more 要查看的文件
-
操作说明
-
应用实例
案例:采用more查看文件 |
/etc/profile
![](https://i-blog.csdnimg.cn/blog_migrate/3d46a74f18c13df88fd1972f711454b2.png)
-
快捷键
![](https://i-blog.csdnimg.cn/blog_migrate/b564108fdc61ca6bcfcf1b1355839170.png)
4.12、less指令
less指令用来分屏查看文件内容,他的功能与more类似,但是比more指令更加强大,支持各种现实终端。less指令在显示文件内容时,
并不是一次将整个文件加载后才显示,而是根据现实需要加载内 容,
对于显示大型文件具有较高的效率。
-
基本语法
less 要查看的文件
-
操作说明
-
应用实例
案例:采用less查看一个大文件 文件/opt/射雕英雄传.txt
![](https://i-blog.csdnimg.cn/blog_migrate/cb338af83da1b9cff2940791ecd13f7f.png)
-
快捷键
![](https://i-blog.csdnimg.cn/blog_migrate/555b4fbfc999c45add68ec9c0d069526.png)
4.12、>指令 和 >>指令
-
介绍
>输出重定向 :会将原来的文件内容覆盖。
>>追加: 不会覆盖原来文件的内容,而是追加到文件尾部。
-
基本语法
4.12.1 ls -l >文件 (功能描述:列表的内容写入文件a.txt中(
覆盖写))
![](https://i-blog.csdnimg.cn/blog_migrate/55581e07a38c4f7c5a1729fb873a0ce0.png)
说明:ls -l > a.txt,将 ls -l 的显示的内容覆盖写入到a.txt文件,如果 该文件不存在,就创建该文件。
4.12.2 ls -al >>文件 (功能描述:列表的内容追加到文件aa.txt的末尾)
![](https://i-blog.csdnimg.cn/blog_migrate/e508f0d945b821d69a53b72715105529.png)
4.12.3 cat 文件1 > 文件2 (功能描述:将文件1的内容覆盖到文件2)
![](https://i-blog.csdnimg.cn/blog_migrate/96ee1195de6b48c915f24c73b2c0bcaf.png)
4.12.4 echo“内容”>> 文件
-
应用实例
案例1:将/home目录下的文件列表 写入到 /home/info.txt中
![](https://i-blog.csdnimg.cn/blog_migrate/d680d6672c676de4c34b9638182c61de.png)
案例2:将当前日历信息追加到 /home/mycal文件中【提示cal】
![](https://i-blog.csdnimg.cn/blog_migrate/3b582c12cf1bf150dbdfde60e8abeb56.png)
4.13、echo指令
echo 输出内容到控制台。
-
基本语法
echo [选项] [输出内容]
-
应用实例
案例:使用echo指令输出环境变量,输出当前的环境路径。
![](https://i-blog.csdnimg.cn/blog_migrate/ad633dfc20c34d62285296e70cc9053c.png)
案例:使用echo指令输出hello,world!
echo hello,world!
4.14、head指令
head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容
-
基本语法
head 文件 (功能描述:查看文件头10行内容)
head -n 5文件 (功能描述:查看文件头5行内容,5可以是任意行数)
-
应用实例
案例:查看/etc/profile的前面5行代码
![](https://i-blog.csdnimg.cn/blog_migrate/35c75e42c7b3f4b53759e57c6e3cb0f7.png)
4.15、tail指令
tail 用于输出文件中尾部的内容,默认情况下tail指令显示文件的后10行内容。
-
基本语法
4.15.1、tail文件 (功能描述:查看文件后10行内容)
4.15.2、tail -n 5 文件 (功能描述:查看文件后5行内容,5可以是任意行数)
4.15.3、tail -f 文件 (功能描述:实时追踪该文档的所有更新,工作经常使用)
-
应用实例
案例1:查看/etc/profile最后5行的代码
![](https://i-blog.csdnimg.cn/blog_migrate/ecf7e2c25bcbaf47acc968900e71ae3c.png)
案例2:实时监控mydate.txt,看看到文件有变化时,是否看到,实时的追加日期
![](https://i-blog.csdnimg.cn/blog_migrate/965cc656b61a034d3750b0bc65dbc436.png)
4.16、ln 指令
软链接也叫符号链接,类似于
windows里的快捷方式,主要饭了链接其他文件的的路径
-
基本语法
ln -s [原文件或目录] [软连接名] (功能描述:给源文件创建一个软连接)
-
应用实例
案例1:在/home目录下创建一个 软连接linkToRoot,连接到 /root目录
![](https://i-blog.csdnimg.cn/blog_migrate/56736edbe0de4268d30088d627738b71.png)
案例2:删除软链接linkToRoot
![](https://i-blog.csdnimg.cn/blog_migrate/e651f0d05a8d1509123d42d56d6ee518.png)
-
细节说明
当我们使用pwd指令查看目录是,仍然看到的是软链接所在目录。
4.17、history指令
查看已经执行过历史命令,也可以执行历史指令
-
基本语法
history (功能描述:查看已经执行过历史命令)
-
应用实例
案例1:显示执行过的所有指令
![](https://i-blog.csdnimg.cn/blog_migrate/a2bdfa690cb2ff7433ba77506d6dd5b5.png)
案例2: 显示最近使用过的10个指令
![](https://i-blog.csdnimg.cn/blog_migrate/b547752a0bd9a11ce5cfed8c58401dbd.png)
案例3:执行历史编号为178的指令
![](https://i-blog.csdnimg.cn/blog_migrate/8c9ed93266ec55661881a397b15ba197.png)
5、时间日期类指令
5.1、date指令-显示当期日期
-
基本语法
-
date (功能描述:显示当前时间)
-
date+%Y (功能描述:显示当前年份)
-
date+%m (功能描述:显示当前月份)
-
date+%d (功能描述:显示当前是那一天)
-
date+%Y-%m-%d %H:%M:%S (功能描述:显示年月日时分秒)
-
应用实例
案例1:显示当前时间信息
![](https://i-blog.csdnimg.cn/blog_migrate/d6f02d3c45b14414324096299ede7cef.png)
案例2:显示当前时间年月日
![](https://i-blog.csdnimg.cn/blog_migrate/6104ef88d303b7aecf416d3ba7353432.png)
案例3:显示当前时间年月日时分秒
![](https://i-blog.csdnimg.cn/blog_migrate/ceda619ed64c0fb09dbf2aabd16b6d48.png)
5.2、date指令-
设置日期
-
基本语法
date -s 字符串时间
-
应用实例
案例1:设置系统当前时间,比如设置成 2018-10-10 11:22:22
![](https://i-blog.csdnimg.cn/blog_migrate/c24138acdc95dc7e80dabfe1e205101e.png)
5.3、cal指令
查看日历指令
-
基本语法
cal [选项] (功能描述:不加选项,显示本月日历)
-
应用实例
案例1:显示当前日历
![](https://i-blog.csdnimg.cn/blog_migrate/87c0c128af619302adb5a151baf65d82.png)
案例2:显示2020年日历
![](https://i-blog.csdnimg.cn/blog_migrate/74c71b58eb1a9c9339a89a7a6674cb92.png)
6、搜索查找类
6.1、find指令
find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或目录显示在终端。
-
基本语法
find [搜索范围] [选项]
-
选项说明
选项
|
功能
|
-name<查询方式>
|
按照指定的文件名查找模式查找文件
|
-user<用户名>
|
查找属于指定用户名所有文件
|
-size<文件大小>
|
按照指定的文件大小查找文件
|
-
应用实例
案例1:按文件名:根据名称查找/home目录下hello.txt文件
![](https://i-blog.csdnimg.cn/blog_migrate/3fbe9cb62fe469e018eeac3331bb41ac.png)
案例2:按拥有者:查找/opt目录下,用户名称为nobody文件
![](https://i-blog.csdnimg.cn/blog_migrate/7f74692ca743f9ea4b693ef6d1714209.png)
案例3:查找整个linux系统下大于20m的文件(+n大于 -n小于 n等于)
![](https://i-blog.csdnimg.cn/blog_migrate/b202a0872e3689317513ef3e9e65764a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/dd1224fd7bff22b47ac6aaa3705244e5.png)
![](https://i-blog.csdnimg.cn/blog_migrate/94de92fa2a7210ad0aa028798a3c48d6.png)
6.2、locate指令
locate指令可以快速定位文件路径。locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。locate指令无需遍历整个文件系统个,查询速度较快,为了保证查询结果的准确度,管理员必须定期更新locate数据。
-
基本语法
locate 搜索文件
-
特别说明
由于我locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate数据库。
-
应用实例
案例1:请使用locate指令快速定位hello.txt 文件所在目录
![](https://i-blog.csdnimg.cn/blog_migrate/72f8ec7e15cea20f7e01e022c89b3fcf.png)
6.3、grep指令和管道符号 |
grep 过滤查找,管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理。
-
基本语法
grep [选项] 查找内容 源文件
-
常用选项
-
选项功能-n显示匹配行及行号-i忽略字母大小写应用实例
案例1:请在hello.txt文件中,查找“yes”所在行,并且显示行号
![](https://i-blog.csdnimg.cn/blog_migrate/87afd2b1db163897c0e4949f234f8267.png)
7、压缩和解压类
7.1、gzip/gunzip 指令
gzip 用于压缩文件,gunzip 用户解压文件
-
基本语法
gzip 文件 (功能描述:压缩文件,只能将文件压缩为*.gz文件)
gunzip 文件.gz (功能描述:解压缩文件命令)
-
应用实例
案例1:gzip 压缩,将/home下的 hello.txt文件进行压缩
![](https://i-blog.csdnimg.cn/blog_migrate/14bece63cfa4c9591baf7dbb95765886.png)
案例2:gunzip解压,将/home下的hello.txt.gz 文件进行解压缩
![](https://i-blog.csdnimg.cn/blog_migrate/eba934a0f7950d22ed6cabb29839787e.png)
-
细节说明
当我们使用gzip对文件进行压缩后,不保留原来的文件 。
7.2、zip/unzip指令
zip用于压缩文件,unzip用于解押的,这个在项目打包发布中很有用的
-
基本语法
zip [选项] XXX.zip 将要压缩的内容 (功能描述:压缩文件和目录的命令)
unzip [选项]XXX.zip (功能描述:加压缩文件)
-
zip常用选项
-r:递归压缩,及压缩目录
-
unzip常用选项
-d<目录>:指定压缩后文件存放目录
-
应用实例
案例1:将/home下的所有文件进行压缩成mypakage.zip
![](https://i-blog.csdnimg.cn/blog_migrate/1600611f27fec65667cc368da31f69f9.png)
![](https://i-blog.csdnimg.cn/blog_migrate/425e6f0f63561b147a87dc9f5f2a4cee.png)
案例2:将mypackage.zip解压到 /opt/tmp 目录下
![](https://i-blog.csdnimg.cn/blog_migrate/1600611f27fec65667cc368da31f69f9.png)
7.3、tar指令
tar指令 是打包指令,最后打包后的文件是 .tar.gz的文件
-
基本语法
tar [选项] XXX.tar.gz 打包的内容(功能描述:打包目录,压缩后的文件格式 .tar.gz)
-
选项说明
选项
|
功能
|
-c
|
产生.tar打包文件
|
-v
|
显示详细信息
|
-f
|
指定压缩后的文件名
|
-z
|
打包同时压缩
|
-x
|
解包.tar文件
|
-
应用实例
案例1:压缩多个文件,将/home/a1.txt 和/home/a2.txt压缩成 a.tar.gz
![](https://i-blog.csdnimg.cn/blog_migrate/c360cf9410878a4256570426f41c4ea7.png)
案例2:将/home的文件夹压缩成myhome.tar.gz
![](https://i-blog.csdnimg.cn/blog_migrate/679176365e5134ebda4eaa4e22956cb8.png)
案例3:将a.tar.gz解压到当前目录
![](https://i-blog.csdnimg.cn/blog_migrate/7e99d6fa30183a59b1ce401f713f3a9c.png)
案例4:将myhome.tar.gz解压到/opt目录下
![](https://i-blog.csdnimg.cn/blog_migrate/7bc2ac6599a172603e768d311b78b41d.png)
指定解压到的那个目录,事先要存在才能成功,否则会报错。