指定运行级别
运行级别 | 说明 |
---|---|
0 | 关机1 |
1 | 单用户【找回丢失密码】 |
2 | 多用户状态没有网络服务 |
3 | 多用户状态有网络服务 |
4 | 系统未使用保留给用户 |
5 | 图形界面 |
6 | 系统重启2 |
常用运行级别是 3 和 5 。
一般默认运行级别是 5 ,可以指定默认运行级别。
切换运行级别
init [0123456]
如在 运行级别5图形界面 下输入init 3
,
则切换至 运行级别3多用户状态有网络服务 下,
再在 运行级别3 下,输入init 5
,则切换至 图形界面下。
指定默认运行级别
说明
在CentOS 7以前,通过在/etc/inittab
文件中修改数字 来指定默认运行级别。
之后进行了简化,
multi-user.target
等同于runlevel 3
graphical.target
等同于runlevel 5
显示当前默认运行级别
systemctl get-default
指定默认运行级别
systemctl set-default TARGET.target
如在 图形界面 下,输入systemctl set-default multi-user.target
可切换至 多用户状态有网络服务,
重启后,计算机会进入以下状态。
注意:
- 一般工作状态常用 运行级别3
帮助指令
1.man [命令或配置文件]
获得帮助信息
注意:
1.未显示完全时,输入 space;
2.输入 q
,退出
2.help 命令
获得shell内置命令的帮助信息,如help cd
文件目录指令
1.pwd指令
基本语法:pwd
功能: 显示当前工作目录的绝对路径
2.ls指令
基本语法:ls [选项] [目录或文件]
常用选项:
-a:显示当前目录所有的文件和目录,包括隐藏的
-l:以列表的方式显示信息
-h:与-l组合显示,将字节按照更适合人看的方式显示
-R:递归显示当前目录下所有的文件和目录
3.cd指令
基本语法:cd [参数]
功能: 切换到指定目录
重点:
理解绝对路径和相对路径
cd ~
或cd
:回到自己的家目录,比如 你是root,cd ~
到/root
cd ..
:回到当前目录的上一级
案例:
- 使用绝对路径切换到root目录
cd /root
- 使用相对路径到/root目录,比如在/home/tom
cd ../../root
- 回到当前目录的上一级目录
cd ..
- 回到家目录
cd ~
4.mkdir指令
基本语法:mkdir [选项] 要创建的目录
功能: 创建目录(mkdir默认只能创建一级目录)
常用选项:
-p:创建多级目录
案例:
- 创建一个目录/home/dog
mkdir /home/dog
- 创建多级目录/home/animal/tiger
mkdir -p /home/animal/tiger
5.rmdir指令
基本语法:rmdir [选项] 要删除的空目录
功能: 删除空目录
案例:
- 删除一个目录/home/dog
rmdir /home/dog
注意:
- rmdir 删除的是空目录,如果目录下有内容是无法删除的;
- 如果需要删除非空目录,需要使用
rm -rf 要删除的目录
,删除时,一定要小心谨慎,如删除/home/animal/tiger,rm -rf /home/animal/tiger
6.touch指令
基本语法:touch 文件名称
功能: 创建空文件
案例:
- 在/home目录下,创建一个空文件 hello.txt
touch hello.txt
7.cp指令
功能: 拷贝文件到指定目录
基本语法:cp [选项] source dest
常用选项:
-r:递归复制整个文件夹
案例:
- 将 /home/hello.txt 拷贝到 /home/bbb 目录下
cp hello.txt /home/bbb
- 递归复制整个文件夹,将 /home/bbb 整个目录拷贝到 /opt下,
cp -r /home/bbb /opt
注意:
- 强制覆盖不提示的方法:\cp,如
\cp -r /home/bbb /opt
8.rm指令
功能: 移除文件或目录
基本语法:rm [选项] 要删除的文件或目录
常用选项:
-r:递归删除整个文件夹
-f:强制删除不提示
案例:
- 将 /home/hello.txt 删除
rm /home/hello.txt
- 递归删除整个文件夹 /home/bbb
rm -r /home/bbb
注意:
- 强制删除不提示的方法:带上 -f 参数即可
9.mv指令
功能: 移动文件与目录3或 重命名
基本语法:
mv oldNameFile newNameFile
:重命名(两个文件在同一目录下)
mv /temp/movefile /targetFolder
:移动文件(两个文件不在同一目录下)
案例:
- 将 /home/cat.txt 文件重新命名为 pig.txt
mv cat.txt pig.txt
- 将 /home/pig.txt 文件移动到 /root 目录下
mv pig.txt /root
- 将 /home/pig.txt 文件移动到 /root 目录下并重命名为 dog.txt
mv pig.txt /root/dog.txt
- 将 /opt/bbb 整个目录移动到 /home 下
mv bbb /home
- 将 /opt/bbb 整个目录移动到 /home 下并重命名为 aaa(/home中本没有aaa)
mv /opt/bbb /home/aaa
10.cat指令
功能: 查看文件内容4
基本语法:cat [选项] 要查看的文件
常用选项:
-n:显示行号
案例:
- 查看 /etc/profile 文件内容,并显示行号
cat -n /etc/profile
注意:
11.more指令
more指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容,more指令中内置了若干快捷键(交互的指令),详见操作说明。
基本语法:more 要查看的文件
7
操作说明:
操作 | 功能说明 |
---|---|
space | 向下滚一屏 |
enter | 向下滚一行 |
ctrl + F | 向下滚一屏 |
ctrl + B | 向上滚一屏 |
= | 输出当前行的行号 |
:f | 输出文件名和当前行的行号 |
v | 调用vim编辑器 |
!命令 | 调用shell,并执行命令 |
q | 代表立刻离开more,不再显示该文件内容 |
案例:
- 采用more查看文件/etc/profile
more /etc/profile
12.less指令
less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端。less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
基本语法:less 要查看的文件
操作说明:
操作 | 功能说明 |
---|---|
space | 向下翻动一页 |
pagedown | 向下翻动一页 |
pageup | 向上翻动一页 |
/子串 | 向下搜索【子串】的功能;n:向下查找;N:向上查找 |
?子串 | 向上搜索【子串】的功能;n:向上查找;N:向下查找 |
q | 离开less这个程序 |
案例:
- 采用less查看一个大文件 /opt/杂文.txt
less /opt/杂文.txt
13.echo指令
功能: 输出内容到控制台
基本语法:echo [选项] [输出内容]
案例:
- 使用 echo 指令输出环境变量,比如输入 $PATH、$HOSTNAME
echo $PATH
- 使用 echo 指令输出 hello,world!
echo "hello,world!"
或
echo hello,world!
14.head指令
功能: 用于显示文件的开头部分内容,默认情况下 head 指令显示文件的前10行内容。
基本语法:
head 文件
:查看文件头10行内容
head -n 5 文件
:查看文件头5行内容,5可以是任意行数
案例:
- 查看 /etc/profile 的前5行代码
head -n 5 /etc/profile
15.tail指令
功能: 用于输出文件中尾部的内容,默认情况下tail指令显示文件的前10行内容。
基本语法:
1)tail 文件
:查看文件尾10行内容
2)tail -n 5 文件
:查看文件尾5行内容,5可以是任意行数
3)tail -f 文件
:实时追踪该文档的所有更新8
案例:
- 查看 /etc/profile 最后5行的代码
tail -n 5 /etc/profile
- 实时监控 mydate.txt
tail -f /home/mydate.txt
,用 Ctrl + C 退出监控
(注意观察两张图中两个控制台的区别哦~)
16.>指令 和 >>指令
功能:
> 输出重定向(覆盖写)
>> 追加9
基本语法:
1)ls -l > 文件
:列表的内容写入文件 a.txt 中(覆盖写)
2)ls -al >> 文件
:列表的内容追加到文件 aa.txt 的末尾
3)cat 文件1 > 文件2
:将文件1的内容覆盖到文件2
4)echo "内容" >> 文件
:追加
案例:
- 将 /home 目录下的文件列表写入到 /home/info.txt 中
ls -l /home > /home/info.txt
(注:如果info.txt不存在,则会创建) - 将当前日历信息追加到 /home/mycal 文件中
cal >> /home/mycal
17.ln指令
软链接也称为符号链接,类似于windows里的快捷方式,主要存放了链接其它文件的路径。10
基本语法:ln -s [原文件或目录] [软链接名]
功能描述: 给原文件创建一个软链接
案例:
- 在 /home 目录下创建一个软链接 myroot,链接到 /root 目录
ln -s /root /home/myroot
- 删除软链接 myroot
rm /home/myroot
注意:
- 当我们使用 pwd 指令查看目录时,仍然看到的是软链接所在目录
18.history指令
查看已经执行过的历史命令,也可以执行历史指令
基本语法:history
功能描述: 查看已经执行过的历史命令
案例:
- 显示所有的历史命令
history
- 显示最近使用过的10个指令
history 10
- 执行历史编号为5的指令
!5
时间日期指令
1.data指令
功能: 显示当前时间、设置日期
基本语法:
1)date
:显示当前时间
2)date +%Y
:显示当前年份
3)date +%m
:显示当前月份
4)date +%d
:显示当前是哪一天
5)date "+%Y-%m-%d %H:%M:%S"
:显示年月日时分秒
date -s 字符串时间
:设置日期
案例:
- 显示当前时间信息
date
- 显示当前时间年月日
date "+%Y-%m-%d"
- 显示当前时间年月日时分秒
date "+%Y-%m-%d %H:%M:%S"
- 设置系统当前时间,比如设置成 2020-11-03 20:02:10
date -s "2020-11-03 20:02:10"
2.cal指令
功能: 查看日历
基本语法:cal [选项]
(默认显示本月日历)
案例:
- 显示当前日历
cal
- 显示2020年日历
cal 2020
搜索查找类指令
1.find指令
功能: 从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端
基本语法:find [搜索范围] [选项]
选项说明:
选项 | 功能 |
---|---|
-name <查询方式> | 按照指定的文件名查找模式查找文件 |
-user <用户名> | 查找属于指定用户名所有文件 |
-size <文件大小> | 按照指定的文件大小查找文件(+n大于 -n小于 n等于,单位有 k,M,G) |
案例:
- 按文件名:根据名称查找 /home 目录下的txt文件
find /home -name *.txt
- 按拥有者:查找 /opt 目录下,用户名称为 nobody 的文件
find /opt -user nobody
- 查找整个linux系统下大于200M的文件
find / -size +200M
2.locate指令
功能: locate指令可以快速定位文件路径。11
locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。locate指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate时刻。
基本语法:locate 搜索文件
注意:
- 由于locate指令基于数据库进行查询,所以第一次运行前,必须使用
updatedb
指令创建locate数据库。
案例:
- 请使用 locate 指令快速定位 hello.txt 文件所在目录,若第一次运行,则
updatedb
locate hello.txt
3.which指令
功能: 可以查看某个指令在哪个目录下
案例:
- 查看 ls 指令在哪个目录
which ls
4.grep指令 和 管道符号 |
功能: 过滤查找,管道符"|"表示将前一个命令的处理结果输出传递给后面的命令处理。
基本语法:grep [选项] 查找内容 原文件
常用选项:
-n:显示匹配行及行号
-i:忽略字母大小写
案例:
- 请在 hello.txt 文件中,查找"yes"所在行,并显示行号
cat /home/hello.txt | grep -n "yes"
12
或
grep -n "yes" /home/hello.txt
压缩和解压类指令
1.gzip/gunzip指令
功能: gzip用于压缩文件,gunzip用于解压
基本语法:
gzip 文件
:压缩文件,只能将文件压缩为*.gz文件
gunzip 文件
:解压缩文件命令
案例:
- 将 /home 下的 hello.txt 文件进行压缩
gzip /home/hello.txt
- 将 /home 下的 hello.txt.gz 文件进行解压
gunzip /home/hello.txt.gz
2.zip/unzip指令
功能: zip用于压缩文件或目录,unzip用于解压13
基本语法 | 功能描述 | 常用选项 | 对应功能 |
---|---|---|---|
zip [选项] XXX.zip 将要压缩的内容 | 压缩文件和目录的命令 | -r | 递归压缩,及压缩目录 |
unzip [选项] XXX.zip | 解压缩文件 | -d <目录> | 指定解压后文件的存放目录 |
案例:
- 将 /home 下的所有文件进行压缩成 myhome.zip
zip -r myhome.zip /home
- 将 myhome.zip 解压到 /opt/tmp 目录下
mkdir /opt/tmp
unzip -d /opt/tmp /home/myhome.zip
3.tar指令
tar指令是打包压缩指令,打包后的文件是.tar的文件,最后打包压缩后的文件是.tar.gz的文件。
基本语法:tar [选项] XXX.tar.gz 打包压缩的内容
14
功能: 打包压缩目录,压缩后的文件格式.tar.gz
选项说明
选项 | 功能 |
---|---|
-c | 产生.tar的打包文件 |
-v | 显示详细过程 |
-f | 指定打包、压缩后的文件名 |
-z | 压缩文件/解压缩.tar.gz文件 |
-x | 解包.tar文件 |
案例:
- 压缩多个文件,将 /home/pig.txt 和 /home/cat.txt 压缩成 pc.tar.gz15
tar -zcvf pc.tar.gz /home/pig.txt /home/cat.txt
- 将 /home 的文件夹压缩成 myhome.tar.gz
tar -zcvf myhome.tar.gz /home
- 将 pc.tar.gz 解压到当前目录
tar -zxvf pc.tar.gz
- 将 myhome.tar.gz 解压到 /opt/tmp2 目录下
mkdir /opt/tmp2
tar -zxvf /home/myhome.tar.gz -C /opt/tmp2
注:在linux下,选项是可以组合使用的.
init 0同halt ↩︎
init 6同reboot ↩︎
类似于 剪切. ↩︎
较vim,更安全,因为cat只能查看不能修改. ↩︎
把前面的结果交给下一个指令进行处理. ↩︎
这是一个组合指令. ↩︎
一般与其它指令组合使用. ↩︎
可以实时抓包网络的变化. ↩︎
将原本显示在控制台的信息,写入文件中. ↩︎
可用于实现某个文件的共享. ↩︎
因为locate建立了自己的查找数据库. ↩︎
从
cat /home/hello.txt
该显示的内容中筛选出"yes"后再输出对应行. ↩︎这个在项目打包发布中很有用的~ ↩︎
内容 既可以是 文件,也可以是目录. ↩︎
多个文件中间加 space 即可. ↩︎