《Linux命令行与shell脚本编程大全》 第四章

简介: 4.1 监测程序 1. ps  默认只显示运行在当前控制台下的属于当前用户的进程。  可以接很多选项,比如 -A表示所有进程  -e等。 2. ps -l  查看进程更多信息   UID:启动这些进程的用户 PID:进程的进程ID PPID:父进程的进程ID C:进程生命周期中的CPU...

4.1 监测程序

1. ps  默认只显示运行在当前控制台下的属于当前用户的进程。  可以接很多选项,比如 -A表示所有进程  -e等。

2. ps -l  查看进程更多信息

 

UID:启动这些进程的用户

PID:进程的进程ID

PPID:父进程的进程ID

C:进程生命周期中的CPU利用率

TTY:进程启动时的终端设备

TIME:运行进程需要的累计CPU时间

CMD:启动的程序名称

PRI:进程的优先级(数字越大代表越低的优先级)

ADDR:进程的内存地址

F:内核分配给进程的系统标记

S:进程的状态(O正在运行,S代表正在休眠,R代表可运行,T代表停止,Z代表僵尸进程,进程已结束资源还没有回收,但是父进程也不在了,没人给他们收尸)

SZ:假如进程被换出,所需交换空间的大致大小

 

还有一种这样的

 

 

4.1.2 实时监测进程

top:这个是实时显示的

 

4.1.3 结束进程

kill 4223   直接输入进程ID号结束

killall http*  通过进程名来结束进程,杀掉所有以http开头的进程

 

 

补充:关于目录的知识:

1. linux将文件存储在单个目录结构中,这个目录被称为虚拟目录(virtual directory)

虚拟目录将安装在PC上的所有存储设备的文件路径纳入单个目录结构中。

2./home/xcy/test/1.c  路径本身没有提供任何有关文件究竟存放在哪个物理磁盘上的信息

3.linux pc机上安装的第一块硬盘称为根驱动器。根驱动器包含了虚拟目录的核心,其他目录都是那里开始构建的。

4. Linux会在根驱动器上创建一些特别的目录,我们称之为挂载点。挂载点是虚拟目录中用于分配额外存储设备的目录。虚拟目录会让文件和目录出现在这些挂载点目录中,然而实际上他们却存储在另外一个驱动器中。

4.2 监测磁盘空间

定义:Linux文件系统将所有的磁盘都并入一个虚拟目录下,再使用新的存储媒体之前,需要把它放到虚拟目录下,这个工作叫做挂载(mounting)。

1.mount:默认情况下输出当前系统上挂载的设备列表

可以看到四部分信息:媒体的设备文件名,媒体挂载到虚拟目录的挂载点,文件系统类型,已挂载媒体的访问状态

 

2. 媒体设备挂载到了虚拟目录以后,root用户就有了该设备的所有访问权利,而其他用户则会被限制。

3. umount。从Linux上移除一个可移动设备时,不能从系统上移除,而应该先卸载。哎,还是不太明白。

 

 

4.df:查看所有已挂载磁盘的使用情况, 也可以df -h。比较容易看懂

5.du:快速查看目录中的磁盘使用情况(默认是当前目录)。也可以加 -h 参数。

-c 显示所有已列出文件总的大小

-s 显示每个输出参数的总计

4.3 处理数据文件

排序: sort  file

还可以接很多参数。

比如 sort -t ':' -k 3 test

可以看成里面的内容是这样  xxx1:xxx2:xxx3:xxx4:xxx5

表示对xxx3进行排序

-t: 指定一个用来区分键位置的字符

-k: --key=pos1[pos1]。排序从pos1开始,如果指定了pos2的话到pos2结束。

 

| 将du命令的输出重定向到sort命令。

-r:表示降序排列。

下面是一个例子:

 

 4.3.2

1. grep [options] pattern [file]

例如:

grep t test // 在test中搜索能匹配模式t的文本

grep -v t test // 匹配没有t的

-n 可以加上行号

-e 匹配多个模式, grep -e t -e f test // 找有t或f的所有行

 

4.3.3 压缩数据

4.3.4 归档数据 tar

 

目录
相关文章
|
10天前
|
Web App开发 Java Linux
Linux之Shell基本命令篇
Linux之Shell基本命令篇
Linux之Shell基本命令篇
|
17天前
|
弹性计算 Shell Perl
ecs服务器shell常用脚本练习(二)
【4月更文挑战第1天】shell代码训练(二)
102 1
|
20天前
|
Java Shell
SpringBoot启动脚本Shell
SpringBoot启动脚本Shell
15 0
|
23天前
|
算法 Linux C++
【Linux系统编程】解析获取和设置文件信息与权限的Linux系统调用
【Linux系统编程】解析获取和设置文件信息与权限的Linux系统调用
29 0
|
23天前
|
存储 算法 Linux
【Linux系统编程】深入理解Linux目录扫描函数:scandir目录函数(按条件扫描目录
【Linux系统编程】深入理解Linux目录扫描函数:scandir目录函数(按条件扫描目录
37 0
|
23天前
|
存储 算法 Linux
【Linux系统编程】Linux 文件系统探究:深入理解 struct dirent、DIR 和 struct stat结构
【Linux系统编程】Linux 文件系统探究:深入理解 struct dirent、DIR 和 struct stat结构
36 0
|
1天前
|
监控 Shell 开发工具
Shell编程
Shell编程
|
1天前
|
Shell
Shell脚本之流程控制语句
Shell脚本之流程控制语句
|
2天前
|
JSON 运维 监控
训练shell常用脚本练习(三)
【4月更文挑战第14天】shell代码训练(三)
10 1
|
6天前
|
存储 弹性计算 Shell
ecs服务器shell常用脚本练习(十)
【4月更文挑战第11天】shell代码训练(十)
136 0