指定运行级别
基本介绍
运行级别说明:
0
:关机
1
: 单用户【找回丢失密码】
2
: 多用户状态没有网络服务
3
: 多用户状态有网络服务
4
: 系统未使用保留给用户
5
: 图形界面
6
: 系统重启
常用运行级别是 3
和5
,也可以指定默认运行级别
命令:init [0123456]
应用实例
命令:init [0123456]
应用案例:通过 init
来切换不同的运行级别,比如动 5-3,然后关机
init 3
【回车】
命令行终端
替换图形界面
CentOS7后运行级别
在centos7以前,/etc/inittab
文件中
进行了简化,如下:
multi-user.target
: analogous to runlevel 3
graphical.target
: analogous to runlevel 5# To view current default target,run:
systemctl get-dafault
【查看当前运行级别】
#To set a default target,run
systemctl set-default TARGET.target
【设置默认运行级别】
systemctl get-dafault
systemctl set-default multi-user.targer
【设置运行级别 3】
找回密码
面试题
如何找回密码
步骤【centOS7.6
系统】
1、首先,启动系统,进入开机界面,在界面中按“e”
进入编辑界面:
2、进入编辑页面,使用键盘上的上下键把光标往下移,找到以 “Linux16
开头内容所在行数”,在行的最后面输入:init=/bin/sh
3、接着,输入完成后,直接按快捷键:Ctrl + x
进入单用户模式
4、接着,在光标闪烁的位置中输入:mount -o remount,rw /
(注意:各个单词间有空格),完成后按键盘的回车键(Enter
)
5、在新的一行最后面输入:passwd
, 完成后按键盘的回车键(Enter
),输入密码,然后再次确认密码即可(提示:密码长度最好8位以上,但不是必须的),密码修改成功后,会显示 passwd…的样式,说明密码修改成功
6、接着,在鼠标闪烁的位置中(最后一行中)输入:touch /.autorelabel
(注意:touch 与 /后面有一个空格),完成后按键盘的回车键(Enter
)
7、继续在光标闪烁的位置中,输入:exec /sbin/init
(注意: exec 与 /后面有一个空格),完成后按键盘的回车键(Enter
),等待系统重启自动修改密码(提示:这个过程时间可能有点长,耐心等待),完成后,系统会自动重启,新的密码生效了
登录成功,界面修改密码,在终端命令行输入:passwd root
回车键后,输入密码
帮助指令
man 获取帮助信息
- 基本语法:
man
[命令或配置文件] (功能描述:获取帮助信息)
案例:查看ls
命令的帮助信息 【在linux下,隐藏文件是以 .开头,选项可以组合使用 比如ls -la
,比如ls -al /root
】【退出q
】man ls
ls -a
ls -l
ls -la
help 指令
-
基本语法:
help
命令 (功能描述:获取shell内置命令的帮助信息) -
应用实例
案例:查看 cd 命令的帮助信息help cd
-
百度帮助更直接
如果英语不太好的,也可以直接百度搜索
文件目录类
pwd 指令
- 基本语法:
pwd
(功能描述:显示当前工作目录的绝对路径,从根目录定位) - 应用实例:案例:显示当前工作目录的绝对路径
pwd
ls 指令
- 基本语法:
ls
[选项] (目录或是文件) - 常用选项
-a
:显示当前目录所有的文件和目录,包括隐藏的文件
-l
:以列表的方式显示信息
cd 指令
-
基本语法:
cd
[参数] (功能描述:切换到指定目录) -
理解:绝对路径和性对路径
cd ~
或者cd
:回到自己的家目录,比如 你是root用户,cd ~ 到 /root
cd ..
回到当前目录的上一级目录cd ~
-
应用实例
案例1:使用绝对路径切换到root
目录
cd /root
案例2:使用相对路径到/root目录,比如在/home/tom
目录下
cd ../../root
pwd
案例3:表示回到当前目录的上一级目录
cd ..
案例4:回到家目录
cd ~
mkdir 指令
mkdir
指令用于创建目录
- 基本语法:
mkdir
[选项] 要创建的目录名称 - 常用选项:
-p
: 创建多级目录 - 应用实例:
1、创建一个目录/home/dog
2、创建多级目录/home/animal/tiger
mkdir /home/dog
mkdir -p /home/animal/tiger
rmdir 指令
rmdir
指令删除空目录
- 基本语法:
rmdir
[选项] 要删除的空目录 - 使用细节:
rmdir
删除的是空目录,如果目录下有内容时无法删除的。 - 提示:如果需要删除除非空目录,需要使用
rm -rf 要删除的目录
【-rf
递归强制删除】 - 应用实例:
案例: 删除一个目录/home/dog
rmdir /home/dog
rm -rf /home/animal
touch 指令
touch
指令创建空文件
- 基本语法:
touch
文件名称 - 应用实例:案例:在
/home
目录下,创建一个空文件 hello.txttouch hello.txt
cp 指令
cp
指令拷贝文件到指定目录
- 基本语法:
cp
[选项]source dest
- 常用选项:
-r
:递归复制整个文件夹cp -r source dest
- 使用细节:强制覆盖不提示的方法:
\cp
示例:\cp -r /home/bbb /opt/
- 应用实例:
1、将/home/hello.txt
拷贝到/home/bbb
目录下
cp hello.txt /home/bbb
2、递归复制整个文件夹,比如:将/home/bbb
整个目录,拷贝到/opt
目录下
cp -r /home/bbb /opt/
rm 指令
- 说明:
rm
指令移除文件或者目录 - 基本语法:
rm
[选项] 要删除的文件或目录 - 常用选项:
-r
:递归删除整个文件夹
-f
:强制删除不提示 - 使用细节:强制删除不提示的方法:带上
-f
参数即可 - 应用实例:
1、将/home/hello.txt
删除
rm /home/hello.txt
2、递归删除整个文件夹/home/bbb
rm -rf /home/bbb
【删除整个文件夹,不提示】
mv 指令
mv
移动文件与目录或重命名
- 基本语法:
mv oldNameFile newNameFile
(功能描述:重命名)
mv /temp/movefile /targetFodler
(功能描述:移动文件) - 应用实例:
1、将/home/cat.txt
文件 重写命名为pig.txt
mv cat.txt pig.txt
2、将/home/pig.txt
文件 移动到/root
目录下
mv pig.txt /root/
3、移动整个目录,比如:将/opt/bbb
移动到/home
mv bbb/ /home/
cat 指令
cat
查看文件内容
- 基本语法:
cat
[选项] 要查看的文件 - 常用选项:
-n
:显示行号 - 使用细节:
cat
只能浏览文件,而不能修改文件,为了浏览方便,一般会带上管道命令| more
- 应用实例:
1、/etc/profile
文件内容,并显示行号
cat -n /etc/profile | more
[进行交互]cat -n /etc/profile
more 指令
more
指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方法按页显示文本的内容。more
指令中内置了若干个快捷键(交互的指令):
操作 | 功能说明 |
---|---|
空白键(space ) | 代表向下翻一页; |
Enter | 代表向下翻【一行】 |
q | 代表立刻离开 more ,不再显示该文件内容 |
Ctrl+F | 向下滚动一屏 |
Ctrl+B | 返回上一屏 |
= | 输出当前行的行号 |
:f | 输出文件名和当前行的行号 |
- 基本语法
more
要查看的文件 - 应用实例:
案例:采用more
查看文件/etc/profile
more /etc/profile
less 指令
less
指令用来分屏查看文件内容,它的功能与more
指令类似,但是比more
指令更加强大,支持各种显示终端。less
指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对应显示大型文件具有较高的效率。
- 基本语法:
less
要查看的文件 - 操作说明:
操作 | 功能说明 |
---|---|
空白键 | 向下翻动一页; |
[pagedown] | 向下翻动一页; |
[pageup] | 向上翻动一页; |
/字串 | 向下搜索【字串】的功能;n:向下查找;N:向上查找 |
?字串 | 向下搜索【字串】的功能;n:向上查找;N:向下查找 |
q | 离开 less 这个程序 |
- 应用实例:
less
案例:采用less
查一个大型文件 /opt/xxx.txtless /etc/profile
echo 指令
echo
输出内容到控制台
- 基本语法:
echo
[选项] [输出的内容] - 应用实例:
1、使用 echo 指令输出环境变量,比如:输出$PATH $HOSTNAME
,
echo $PATH
2、使用 echo 指令输出 “hello,world”
echo "hello,world"
head 指令
head
用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容
- 基本语法:
head
文件 (功能描述:查看文件头10行内容)
head -n 5
文件 (功能描述:查看文件头5行内容,5可以是任意行数) - 应用实例:案例:查看
/etc/profile
的前面行代码
head -n 5 /etc/profile
head -n 5 /etc/profile
tail 指令
tail
用于输出文件中尾部的内容,默认情况下tail
指令显示文件前10行内容。
- 基本语法:
1)tail
文件 (功能描述:查看文件尾10行内容)
2)tail -n 5
文件 (功能描述:查看文件尾5行内容,5可以是任意行数)
3)tail -f
文件 (功能描述:实时追踪文档的所有更新) - 应用实例:
1、查看/etc/profile
最后5行的代码
tail -n 5 /etc/profile
2、时候监控 mydate.txt,看看到文件有变化时,是否看到,实时的追加信息tail -f mydate.txt
> 指令 和 >> 指令
>
输出重定向和 >>
追加
- 基本语法:
1)ls -l >
文件 (功能描述:列表的内容写入到文件a.txt中(覆盖))
2)ls -al >>
文件 (功能描述:列表的内容追加到文件aa.txt的末尾)
3)cat
文件1>
文件2 (功能描述:将文件1的内容覆盖到文件2)
4)echo "内容" >>
文件 (功能描述:将内容追加末尾在文件中) - 应用实例:
1、将/home
目录下的文件列表 写入到/home/info.txt
中,覆盖写入
ls -l /home > /home/info.txt
【如果info.txt 不存在,则会创建】
2、将当前日历信息 追加到/home/mycal
文件中
cal >> /home/mycal
ln 指令
软链接也称为符号链接,类似与window里的快捷键方法,主要存放了链接其他文件的路径
- 基本语法:
ln -s
[原文件或目录] [软链接名] (功能描述:给原文件创建一个软链接) - 细节说明:
当我们使用pwd
指令查看目录时,仍然看到的是软链接所在的目录 - 应用实例:
1、在/home
目录创建一个软链接myroot
,连接到/root
目录
ln -s /root /home/myroot
2、删除软连接myroot
rm /home/myroot
ln -s /root /home/myroot
rm /home/myroot
history指令
查看已执行历史命令,也可以执行历史指令
- 基本语法:
history
(功能描述:查看已经执行过的历史命令) - 应用实例:
1、显示所有的历史命令
history
2、显示最近使用过的10个指令
history 10
3、执行历史编号为5的指令
!5
history
history 10
!5
时间日期类
date 指令 - 显示当前日期
- 基本语法:
1)date
(功能描述:显示当前时间)
2)date +%Y
(功能描述:显示当前年份)
3)date +%m
(功能描述:显示当前月份)
4)date +%d
(功能描述:显示当前是哪一天)
5)date "+%Y-%m-%d %H:%M:%S"
(功能描述:显示年月日时分秒)
date 指令-设置日期
- 基本语法:
date -s
字符串时间 - 应用案例;
1、设置系统当前时间,比如设置成:2021-11-11 11:11:11。
date -s "2021-11-11 11:11:11"
date -s "2021-11-11 11:11:11"
cal 指令
查看日历指令
- 基本语法:
cal
[选项] (功能描述:不加选项,显示本月日历) - 应用实例:
1、显示当前日历。
cal
2、显示2020年日历:
cal 2020
搜索查找类
find 指令
find
指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端
- 基本语法:
find
[搜索范围] [选项] - 选项说明:
-name<查询方式>
:按照指定的文件名查找模式查找文件
-user<用户名>
:查找属于指定用户名所有文件
-size<文件大小>
:按照指定的文件大小查找文件 - 应用实例:
1、按文件名:根据名称查找/home
目录下的hello.txt文件
指令:find /home -name hello.txt
2、按拥有者:查找/opt
目录下,用户名称为 nobody的文件
指令:find /opt -user nobody
3、查找整个linux系统大于200M的文件(+n 大于 -n 小于 n等于,单位有 k,M,G
)
指令:find / -size +200M
find /opt -user root | more
find / -size +200M
locate 指令
locate
指令可以快速定位文件路径,locate
指令利用事先建立的系统中所有文件名称及路径的locate
数据库实现快速定位给定的文件。Locate
指令无须遍历整个文件系统,查询速度较快,为了保证查询结果的准确度,管理员必须定期更新locate
时刻
- 基本语法:
locate
搜索文件 - 特别说明:由于
locate
指令基于数据库进行查询,所以第一次运行前,必须使用updatedb
指令创建locate
数据库。 - 额外说明:
while
指令,可以查看某个指令在哪个目录下,比如:ls 指令
在哪个目录 - 应用实例:
1、请使用locate
指令快速定位 hello.txt 文件所在目录updatedb
locate hello.txt
which ls
【可以查看ls
指令在哪个目录下】
grep 指令和 管道符号 |
grep
过滤查找,管道符,"|"
,表示将前一个命令处理结果输出传递给后面的命令处理
- 基本语法:
grep
[选项] 查找内容 源文件 - 常用选项:
-n
:显示匹配行及行号
-i
:忽略字母大小写 - 应用实例:
1、请在 hello.txt 文件中,查找 “yes” 所在行,并且显示行号
写法1:cat /home/hello.txt | grep "yes"
写法2:grep -n "yes" /home/hello.txt
压缩和解压类
gzip/gunzip 指令
gzip
用于压缩文件,gunzip
用于解压文件
- 基本语法:
gzip
文件 (功能描述:压缩文件,只能将文件压缩为*.gz
文件)
gunzip 文件.gz
(功能描述:解压缩文件命令) - 应用实例:
1、gzip
压缩,将/home
下的 hello.txt文件进行压缩
gzip /home/hello.txt
2、gunzip
解压缩,将/home
下的 hello.txt.gz 文件进行解压缩
gunzip /home/hello.txt.gz
zip/unzip 指令
zip
用于压缩文件/文件夹, unzip
用于解压文件,这个在项目打包发布中很有用
- 基本语法:
zip
[选项] xxx.zip 将要压缩的内容(功能描述:压缩文件和目录的命令)
unzip
[选项] xxx.zip (功能描述:解压缩文件) zip
常用选项:
-r
:递归压缩,即压缩目录unzip
常用选项:
-d<目录>
:指定解压后文件的存方法目录- 应用实例:
1、将/home
下的 所有文件进行压缩成 myhome.zip
zip -r myhome.zip /home/
【 /home/ 把home目录及其包含的文件子文件夹都压缩】
2、将 myhome.zip 解压到/opt/tmp
目录下
mkdir /opt/tmp
unzip -d /opt/tmp /home/myhome.zip
zip -r myhome.zip /home/
mkdir /opt/tmp
unzip -d /opt/tmp /home/myhome.zip
tar 指令
tar
指令 是打包命令,最后打包后的文件是 .tar.gz
的文件
- 基本语法:
tar [ 选项] XXX.tar.gz 打包的内容
(功能描述:打包目录,压缩后的文件格式.tar.gz
) - 选项说明:
-c
:产生.tar
打包文件
-v
:显示详细详细
-f
:指定压缩后的文件名
-z
:打包同时压缩
-x
:解包.tar
文件 - 应用实例:
1、压缩多个文件,将/home/pig.txt
和/home/cat.txt
压缩成pc.tar.gz
tar -zcvf pc.tar.gz /home/pig.txt /home/cat.txt
2、将/home
的文件夹 压缩成 myhome.tar.gz
tar -zcvf myhome.tar.gz /home/
3、将pc.tar.gz
解压到当前目录,切换到/opt/
tar -zxvf /home/pc.tar.gz
4、将 myhome.tar.gz 解压到/opt/tmp2
目录下
mkdir /opt/tmp2
tar -zxvf /home/myhome.tar.gz -C /opt/tmp2
tar -zcvf pc.tar.gz /home/pig.txt /home/cat.txt
tar -zcvf myhome.tar.gz /home/
tar -zxvf /home/pc.tar.gz
tar -zxvf /home/myhome.tar.gz -C /opt/tmp2