系统信息相关命令
- 本节内容主要是为了方便通过远程终端维护服务器时,查看服务器上当前 系统日期和时间 / 磁盘空间占用情况 / 程序执行情况
- 本小结学习的终端命令基本都是查询命令,通过这些命令对系统资源的使用情况有个了解
目标
- 时间和日期
date
cal
- 磁盘和目录空间
df
du
- 进程信息
ps
top
kill
01. 时间和日期
序号 | 命令 | 作用 |
---|---|---|
01 | date | 查看系统时间 |
02 | cal |
calendar 查看日历,-y 选项可以查看一年的日历 |
02. 磁盘信息
序号 | 命令 | 作用 |
---|---|---|
01 | df -h |
disk free 显示磁盘剩余空间 |
02 | du -h [目录名] |
disk usage 显示目录下的文件大小 |
- 选项说明
参数 | 含义 |
---|---|
-h | 以人性化的方式显示文件大小 |
03. 进程信息
- 所谓 进程,通俗地说就是 当前正在执行的一个程序
序号 | 命令 | 作用 |
---|---|---|
01 | ps aux |
process status 查看进程的详细状况 |
02 | top | 动态显示运行中的进程并且排序 |
03 | kill [-9] 进程代号 | 终止指定代号的进程,-9 表示强行终止 |
ps
默认只会显示当前用户通过终端启动的应用程序
-
ps
选项说明功能
选项 | 含义 |
---|---|
a | 显示终端上的所有进程,包括其他用户的进程 |
u | 显示进程的详细状态 |
x | 显示没有控制终端的进程 |
提示:使用
kill
命令时,最好只终止由当前用户开启的进程,而不要终止root
身份开启的进程,否则可能导致系统崩溃
- 要退出
top
可以直接输入q
其他命令
目标
- 查找文件
find
- 软链接
ln
- 打包和压缩
tar
- 软件安装
apt-get
01. 查找文件
-
find
命令功能非常强大,通常用来在 特定的目录下 搜索 符合条件的文件
序号 | 命令 | 作用 |
---|---|---|
01 | find [路径] -name "*.py" | 查找指定路径下扩展名是 .py 的文件,包括子目录 |
- 如果省略路径,表示在当前文件夹下查找
- 之前学习的通配符,在使用
find
命令时同时可用 - 有关
find
的高级使用,在就业班会讲
演练目标
- 搜索桌面目录下,文件名包含
1
的文件
- 搜索桌面目录下,文件名包含
find -name "*1*"
- 搜索桌面目录下,所有以
.txt
为扩展名的文件
- 搜索桌面目录下,所有以
find -name "*.txt"
- 搜索桌面目录下,以数字
1
开头的文件
- 搜索桌面目录下,以数字
find -name "1*"
02. 软链接
序号 | 命令 | 作用 |
---|---|---|
01 | ln -s 被链接的源文件 链接文件 | 建立文件的软链接,用通俗的方式讲类似于 Windows 下的快捷方式 |
注意:
-
- 没有
-s
选项建立的是一个硬链接文件
- 两个文件占用相同大小的硬盘空间,工作中几乎不会建立文件的硬链接
- 没有
- 源文件要使用绝对路径,不能使用相对路径,这样可以方便移动链接文件后,仍然能够正常使用
演练目标
- 将桌面目录下的
01.py
移动到demo/b/c
目录下
- 将桌面目录下的
-
- 在桌面目录下新建
01.py
的软链接
FirstPython
- 分别使用 相对路径 和 绝对路径 建立
FirstPython
的软链接
- 在桌面目录下新建
- 将
FirstPython
移动到demo
目录下,对比使用 相对路径 和 绝对路径 的区别
- 将
硬链接简介(知道)
- 在使用
ln
创建链接时,如果没有-s
选项,会创建一个 硬链接,而不是软链接
硬链接演练
- 在
~/Desktop/demo
目录下建立~/Desktop/demo/b/c/01.py
的硬链接01_hard
- 在
- 使用
ls -l
查看文件的硬链接数(硬链接——有多少种方式可以访问文件或者目录)
- 使用
- 删除
~/Desktop/demo/b/c/01.py
,并且使用tree
来确认demo
目录下的三个链接文件
- 删除
文件软硬链接的示意图
文件软硬链接示意图
在 Linux 中,文件名 和 文件的数据 是分开存储的
- 提示:
- 在 Linux 中,只有文件的
硬链接数 == 0
才会被删除 - 使用
ls -l
可以查看一个文件的硬链接的数量 - 在日常工作中,几乎不会建立文件的硬链接,知道即可
- 在 Linux 中,只有文件的
03. 打包压缩
- 打包压缩 是日常工作中备份文件的一种方式
- 在不同操作系统中,常用的打包压缩方式是不同的
-
Windows
常用rar
-
Mac
常用zip
-
Linux
常用tar.gz
-
3.1 打包 / 解包
-
tar
是 Linux 中最常用的 备份工具,此命令可以 把一系列文件 打包到 一个大文件中,也可以把一个 打包的大文件恢复成一系列文件 -
tar
的命令格式如下:
# 打包文件
tar -cvf 打包文件.tar 被打包的文件/路径...
# 解包文件
tar -xvf 打包文件.tar
-
tar
选项说明
选项 | 含义 |
---|---|
c | 生成档案文件,创建打包文件 |
x | 解开档案文件 |
v | 列出归档解档的详细过程,显示进度 |
f | 指定档案文件名称,f 后面一定是 .tar 文件,所以必须放选项最后 |
注意:
f
选项必须放在最后,其他选项顺序可以随意
打包解包演练
- 删除桌面下的所有内容
- 在桌面下新建三个空白文件
01.py
、02.py
、03.py
- 将这三个文件打一个
py.tar
的包 - 新建
tar
目录,并且将py.tar
移动到tar
目录下 - 解包
py.tar
3.2 压缩/解压缩
1) gzip
-
tar
与gzip
命令结合可以使用实现文件 打包和压缩-
tar
只负责打包文件,但不压缩 - 用
gzip
压缩tar
打包后的文件,其扩展名一般用xxx.tar.gz
-
在
Linux
中,最常见的压缩文件格式就是xxx.tar.gz
- 在
tar
命令中有一个选项 -z 可以调用gzip
,从而可以方便的实现压缩和解压缩的功能 - 命令格式如下:
# 压缩文件
tar -zcvf 打包文件.tar.gz 被压缩的文件/路径...
# 解压缩文件
tar -zxvf 打包文件.tar.gz
# 解压缩到指定路径
tar -zxvf 打包文件.tar.gz -C 目标路径
选项 | 含义 |
---|---|
-C | 解压缩到指定目录,注意:要解压缩的目录必须存在 |
2) bzip2(two)
-
tar
与bzip2
命令结合可以使用实现文件 打包和压缩(用法和gzip
一样)-
tar
只负责打包文件,但不压缩, - 用
bzip2
压缩tar
打包后的文件,其扩展名一般用xxx.tar.bz2
-
- 在
tar
命令中有一个选项 -j 可以调用bzip2
,从而可以方便的实现压缩和解压缩的功能 - 命令格式如下:
# 压缩文件
tar -jcvf 打包文件.tar.bz2 被压缩的文件/路径...
# 解压缩文件
tar -jxvf 打包文件.tar.bz2
04. 软件安装
4.1 通过 apt 安装/卸载软件
- apt 是
Advanced Packaging Tool
,是 Linux 下的一款安装包管理工具 - 可以在终端中方便的 安装/卸载/更新软件包
# 1. 安装软件
$ sudo apt install 软件包
# 2. 卸载软件
$ sudo apt remove 软件名
# 3. 更新已安装的包
$ sudo apt upgrade
安装演练
# 一个小火车提示
$ sudo apt install sl
# 一个比较漂亮的查看当前进程排名的软件
$ sudo apt install htop
4.2 配置软件源
- 如果希望在
ubuntu
中安装软件,更加快速,可以通过设置镜像源,选择一个访问网速更快的服务器,来提供软件下载/安装服务 - 提示:更换服务器之后,需要一个相对比较长时间的更新过程,需要耐心等待。更新完成后,再安装软件都会从新设置的服务器下载软件了
所谓镜像源,就是所有服务器的内容是相同的(镜像),但是根据所在位置不同,国内服务器通常速度会更快一些!
ubuntu设置软件源
vim 编辑器
vim的三种工作模式!
1、浏览模式 :启动时进入,不能编辑文本
2、插入模式(a/i/o) :编辑文本
3、命令行模式(ESC -> shift + :) :保存退出..
以下操作均在命令模式进行:
yy 复制
p 粘贴 100p 粘贴100行
u 撤销上次的编辑
shit + : 进入命令行状态 可以 w保存 或者 wq保存并退出
ctrl +v: 进入可视化模式,选中 I 按下建选中所有I 按D进行删除
dd: 删除 100dd 删除100行
批量选择:
esc > ctrl + v > 移动方向
批量删除:
esc > ctrl+v > 下键选中注释区域 > d
批量注释:
esc > ctrl+v > 下键选中注释区域 > shift+i(进入插入模式) > # > esc建键
查看行号:
esc > :set nu
多行注释:
esc > ctrl + v > 上下键移动 > I(插入模式) > # > esc