一 、运行级别指令
运行级别说明
Linux有七个运行级别,如下所示
运行级别 | 级别说明 |
---|---|
0 | 关机 |
1 | 单用户(找回丢失密码) |
2 | 多用户无网络服务 |
3 | 多用户有网络服务(用的最多的) |
4 | 保留尚未使用 |
5 | 图形界面 |
6 | 重启(启用该运行别之后机器进入该级别就会重启) |
运行级别配置文件:/etc/inittab
常用的运行级别是3和5,要修改默认的运行级别可以修改运行级别配置文件:/etc/inittab的id:5 initdefault:这行中的数字
指定运行级别
基本语法: init [0123456]
举例:从图像界面到运行级别3,再从级别3回退到级别5
在Linux的图形界面中,打开终端输入:init 3 回车进入级别3,再输入init5即可回到级别5
【面试题】如何找回root密码
题目:如何找回root密码,如果我们不小心忘记了root密码,怎么找回?
思路:进入到单用户模式(运行级别1),然后修改root密码,因为进入单用户模式,root不需要密码就可以登录
实际操作步骤:
1)启动系统没有进入到登录页面前点击enter键暂停启动,如下图所示
2)输入e,编辑命令在启动之前,进入如下页面
3)将光标移动到第二行,再输入e(编辑内核),进入如下页面,输入1(运行级别1,单用户模式)
4)输入enter键,再输入b,开始引导
5)开始进入单用户模式,用户登录为root
6)进入之后直接输入passwd root进行修改root账户密码。
7)输入reboot重启完成操作
细节说明
1)不允许通过使用远程操作的方式进行修改密码,需要进行直接操作电脑的方式进行
2)假如默认运行级别被修改为级别0,出现无法开机的情况,解决办法是进入单用户模式修改默认启动级别即可
二、帮助指令
当我们对某个指令不熟悉时,我们可以使用Linux指令的帮助指令进行了解指令的使用方法。
man 获得帮助信息
基本语法 :man [命令或配置文件](功能描述:获得帮助信息)
help指令
基本语法:help 命令 (功能描述:获得shell内置命令的帮助信息)
百度帮助更直接
虽然上面两个都可以来获取指令帮助,但是需要英语功底,如果英语不太好的,我还是 推荐大家直接百度靠谱。
三、文件目录类
pwd 指令
功能描述:显示当前工作目录的绝对路径
基本语法:pwd
ls指令
基本语法:ls [选项] [目录或是文件]
常用选项
1) -a :显示当前目录所有的文件和目录,包括隐藏的。
2) -l :以列表的方式显示信息
操作实例如图所示:
cd 指令
功能描述:进入到指定目录
基本语法 :cd [参数] (功能描述:切换到指定目录)
常用参数 :
1) 绝对路径和相对路径
2)cd ~ 或者cd 回到自己的家目录
3) cd … 回到当前目录的上一级目录
如何理解绝对绝对路径与相对路径:
需求:从当前工作目录时的 /root进入到/home
绝对路径: /home,即从根目录开始定位
相对路径:…/home,从当前工作目录定位
mkdir指令
功能描述:mkdir指令用于创建目录
基本语法: mkdir [选项] 要创建的目录
常用选项 :-p :创建多级目录
实例
1)创建一个目录:/home/dog
指令: mkdir /home/dog
2)创建多级目录 /home/animal/tiger
指令:mkdir -p /home/animal/tiger
rmdir指令
功能描述: rmdir指令删除空目录
基本语法 rmdir [选项] 要删除的空目录
细节说明
1)rmdir 删除的是空目录,如果目录下有内容时无法删除的。
2)如果需要删除非空目录,需要使用指令: rm -rf 要删除的目录
touch指令
功能描述: touch指令创建空文件
基本语法 touch 文件名称
实例:
1)创建一个文件: touch 1.txt
- 创建多个文件:touch 1.txt 2.txt
cp指令
cp 指令拷贝文件到指定目录
基本语法 cp [选项] source dest
常用选项 -r :递归复制整个文件夹
说明: 强制覆盖不提示的方法:\cp
实例:
1)将当前目录下的1.txt文件拷贝到当前目录home/b目录下
2) 拷贝文件夹 : cp -r 源目录/ 目标目录/
3)拷贝文件夹时,覆盖目标文件夹文件:\cp -r 源目录/ 目标目录/
rm指令
功能描述:rm 指令移除文件或目录
基本语法 rm [选项] 要删除的文件或目录
常用选项
1)-r :递归删除整个文件夹
2)-f : 强制删除不提示
说明:强制删除不提示的方法:带上 -f 参数即可
实例
(1)删除文件
(2)强制删除整个目录
mv指令
功能描述:mv 移动文件到相应目录或重命名
基本语法
1)mv oldNameFile newNameFile (功能描述:重命名)
2)mv /temp/movefile /targetFolder (功能描述:移动文件)
实例
(1)重命名文件
需求:将当前目录下的aaa.txt文件重命名为pig.txt
细节说明:它的实质还是移动命令(即剪切),将当前目录下的aaa.txt文件,移动到当前目录下的pig.txt文件
(2)移动文件
需求:将当前目录下的pig.txt文件移动到/root目录下
cat指令
功能描述:cat 查看文件内容 ,以只读的方式
基本语法 :cat [选项] 要查看的文件
常用选项 : -n :显示行号
实例
需求: 读取/ect/profile 文件内容,并显示行号
细节说明
1)它的功能只能查看文件内容,不能对文件进行修改。(只读的方式)
2)在使用cat命令为了浏览方便,一般会带上 管道命令 | more ,对文件分页显示,点击空格键即可浏览下一页。语法:cat 文件名 | more
more指令
功能描述: more指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页 显示文本文件的内容。 more指令中内置了若干快捷键,详见操作说明
操作说明
操作 | 功能说明 |
---|---|
空白键(space) | 代表向下翻一页 |
Enter | 代表向下翻一行 |
q | 代表立刻离开more ,不再显示该文件内容。 |
Ctrl+F | 向下滚动一屏 |
Ctrl+B | 返回上一屏 |
= | 输出当前行的行号 |
:f | 输出文件名和当前行的行号 |
基本语法 :more 要查看的文件
less指令
功能描述:less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支 持各种显示终端。less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是 根据显示需要加载内容,对于显示大型文件具有较高的效率。
操作说明
操作 | 功能说明 |
---|---|
空白键 | 向下翻动一页 |
[pagedown] | 向下翻动一页 |
[pageup] | 向上翻动一页; |
/字串 | 向下搜寻『字串』的功能;n:向下查找;N:向上查找; |
?字串 | 向上搜寻『字串』的功能;n:向上查找;N:向下查找; |
q | 离开 less 这个程序; |
指令> 和 >> 指令
输出重定向>和 >> 追加
功能描述:
1)输出重定向>添加内到指定文件会将原来的文件内容覆盖
2)追加>>添加内容到指定文件不会覆盖原来的文件内容,而是追加到文件末尾
基本语法
- ls -l >文件 (功能描述:列表的内容写入文件a.txt中(覆盖写))
- ls -al >>文件 (功能描述:列表的内容追加到文件aa.txt的末尾)
- cat 文件1 > 文件2 (功能描述:将文件1的内容覆盖到文件2)
- echo “内容”>> 文件 (功能描述:直接将双引号中的内容追加到指定文件中)
实例
(1)需求:创建a.txt文件并存入当前列表信息
说明:ls-l >a.txt,是将ls-l的显示内容覆盖写入到a.txt文件中。如果该文件不存在,将新建一个a.txt文件
(2)将文件1的内容覆盖到文件
echo指令
功能描述: echo输出内容到控制台。
基本语法 echo [选项] [输出内容]
实例
(1)输出环境变量路径(path)
(2)输出hello到控制台
head指令
功能描述:head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容
基本语法:
1) head 文件 (功能描述:查看文件头10行内容)
2)head -n 5 文件 (功能描述:查看文件头5行内容,5可以是任意行数)
实例
(1)查看/etc/profile文件前五行
tail指令
功能描述:tail用于输出文件中尾部的内容,默认情况下tail指令显示文件的前10行内容。
基本语法
-
tail 文件 (功能描述:查看文件后10行内容)
-
tail -n 5 文件 (功能描述:查看文件后5行内容,5可以是任意行数)
-
tail -f 文件 (功能描述:实时追踪该文档的所有更新)
实例
(1)查看/etc/profile 最后5行的代码
(2)实时监控mydate.txt,看看文件有变化时,是否看到实时的追加日期
1)tail -f 文件对文件进行实时监控
2)在其他终端向文件添加内容,实时监控终端也会同步更新显示
ln 指令
功能描述:软链接也成为符号链接,类似于windows里的快捷方式,主要存放了链接其他文件的路径
基本语法: ln -s [原文件或目录] [软链接名] (功能描述:给原文件创建一个软链接)
细节说明:当我们使用pwd指令查看目录时,仍然看到的是软链接所在目录。
实例
(1) 在/home 目录下创建一个软链接 linkToRoot,连接到 /root 目录
(2) 删除软连接 linkToRoot(删除软链接的时候不要带斜杠,否则提示忙)
history指令
查看已经执行过历史命令,也可以执行历史指令
基本语法 :history (功能描述:查看已经执行过历史命令)
实例
(1)显示所有的历史命令
(2) 显示最近使用过的10个指令
(3)执行历史编号为178的指令
四、时间日期类
date指令-显示当前日期
基本语法
-
date (功能描述:显示当前时间)
-
date +%Y (功能描述:显示当前年份)
-
date +%m (功能描述:显示当前月份)
-
date +%d (功能描述:显示当前是哪一天)
-
date “+%Y-%m-%d %H:%M:%S”(功能描述:显示年月日时分秒)
实例
(1)显示当前年月日
1)第一种方式
2)第二种方式
date指令-设置日期
基本语法: date -s 字符串时间
实例
(1) 设置系统当前时间 , 比如设置成 2018-10-10 11:22:22
cal指令
功能描述:查看日历指令
基本语法: cal [选项] (功能描述:不加选项,显示本月日历)
实例
(1) 显示当前日历
(2) 显示2020年日历
五、搜索查找类
find指令
功能描述: find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终 端。
基本语法 :find [搜索范围] [选项]
常用选项说明
选项 | 功能 |
---|---|
-name<查询方式> | 按照指定的文件名查找模式查找文件 |
-user<用户名> | -user<用户名> |
-size<文件大小> | 按照指定的文件大小查找文件。 |
实例
(1) 按文件名:根据名称查找/home 目录下的hello.txt文件
(2)按拥有者:查找/opt目录下,用户名称为 nobody的文件
locate指令
功能描述: locaate指令可以快速定位文件路径。locate指令利用事先建立的系统中所有文件名称及路径 的locate数据库实现快速定位给定的文件。Locate指令无需遍历整个文件系统,查询速度较快。 为了保证查询结果的准确度,管理员必须定期更新locate时刻。
基本语法 :locate 搜索文件
特别说明: 由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate 数据库。
实例
(1)请使用locate 指令快速定位 hello.txt 文件所在目录
grep指令和 管道符号 |
功能描述: grep 过滤查找 , 管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理。
基本语法 :grep [选项] 查找内容 源文件
常用选项
选项 | 功能 |
---|---|
-n | 显示匹配行以及行号 |
-i | 忽略字母大小写 |
实例
(1) 请在 hello.txt 文件中,查找 “yes” 所在行(区分大小写),并且显示行号
(1) 请在 hello.txt 文件中,查找 “yes” 或"Yes"所在行,并且显示行号
六、压缩和解压类
gzip/gunzip 指令
功能描述:gzip 用于压缩文件, gunzip 用于解压的
基本语法 :
1)gzip 文件 (功能描述:压缩文件,只能将文件压缩为*.gz文件)
2)gunzip 文件.gz (功能描述:解压缩文件命令)
实例
(1)gzip压缩, 将 /home下的 hello.txt文件进行压缩
(2)gunzip压缩, 将 /home下的 hello.txt.gz 文件进行解压缩
zip/unzip 指令
功能描述:zip 用于压缩文件, unzip 用于解压的,这个在项目打包发布中很有用的
基本语法:
zip [选项] XXX.zip 将要压缩的内容(功能描述:压缩文件和目录的命令) unzip [选项] XXX.zip (功能描述:解压缩文件)
zip常用选项: -r:递归压缩,即压缩目录
unzip的常用选项: -d<目录> :指定解压后文件的存放目录
实例
(1) 将 /home下的 所有文件进行压缩成 mypackage.zip
(2) 将 mypackge.zip 解压到 /opt/tmp 目录下
tar 指令
功能描述:tar 指令 是打包指令,最后打包后的文件是 .tar.gz 的文件。
基本语法:
tar [选项] XXX.tar.gz 打包的内容 (功能描述:打包目录,压缩后的文件格式.tar.gz)
选项说明(压缩带上前四个参数,如果是解压就不带z参数应带x参数)
选项 | 功能 |
---|---|
-c | 产生.tar打包文件 |
-v | 显示详细信息 |
-f | 指定压缩后的文件名 |
-z | 打包同时压缩 |
-x | 解包.tar文件 |
实例
(1) 压缩多个文件,将 /home/a1.txt 和 /home/a2.txt 压缩成 a.tar.gz
(2) 将/home 的文件夹 压缩成 myhome.tar.gz
(3) 将 a.tar.gz 解压到当前目录(注意参数)
(4)将myhome.tar.gz 解压到 /opt目录下(指定解压的目录,事先需要存在,否则报错)