【读书笔记】Linux命令行与Shell脚本编程大全--更多的bash shell命令

三世轮回 提交于 2020-02-28 14:47:41

1.检测程序

1.1 探查进程-ps

ps命令能输出运行在系统上的所有程序的许多信息。
ps:默认情况下,ps命令只会显示运行在当前控制台下的属于当前用户的进程。

Linux系统中使用的GNU ps命令支持3种不同类型的命令行参数:

  1. Unix风格的参数,前面加单破折线
  2. BSD风格的参数,前面不加破折线
  3. GNU风格的参数,前面加双破折线

1.2 实时监测进程-top

借图分析如下:
在这里插入图片描述
输出的第一部分显示的是系统的概况:第一行显示了当前时间、系统的运行时间、登录的用户数以及系统的平均负载。
平均负载有3个值:最近1分钟的、最近5分钟的和最近15分钟的平均负载。值越大说明系统的负载越高。由于进程短期的突发性活动,出现最近1分钟的高负载值也很常见,但如果近15分钟内的平均负载都很高,就说明系统可能有问题。
第二行显示了进程概要信息——top命令的输出中将进程叫作任务(task):有多少进程处在运行、休眠、停止或是僵化状态(僵化状态是指进程完成了,但父进程没有响应)。
note:Linux系统管理的要点在于定义究竟到什么程度才算是高负载。这个值取决于系统的硬件 配置以及系统上通常运行的程序。对某个系统来说是高负载的值可能对另一系统来说就 是正常值。通常,如果系统的负载值超过了2,就说明系统比较繁忙了。
ps:详细解释可自行查询资料或者参考该书4.1.2章节。

1.3 结束进程

在Linux中,进程之间通过信号来通信。进程的信号就是预定义好的一个消息,进程能识别它并决定忽略还是作出反应。进程如何处理信号是由开发人员通过编程来决定的。大多数编写完善的程序都能接收和处理标准Unix进程信号
在这里插入图片描述
相关命令

命令 描述 参数(包括不仅限于)
kill 可通过进程ID(PID)给进程发信号 -s
killall 支持通过进程名而不是PID来结束进程。
killall命令也支持通配符,这在系统因负载过大而变得很慢时很有用

note:以root用户身份登录系统时,使用killall命令要特别小心,因为很容易就会误用通配符而结束了重要的系统进程。这可能会破坏文件系统。

2.检测磁盘空间

2.1 挂载存储媒介

何为挂载(mounting)?
Linux文件系统将所有的磁盘都并入一个虚拟目录下。在使用新的存储媒体之前,需要把它放到虚拟目录下。

管理可移动存储设备的相关Linux命令行命令

命令 描述 参数(包括不仅限于)
mount 默认情况下,mount命令会输出当前系统上挂载的设备列表 -t (type)
umount 通过设备文件或者是挂载点来指定要卸载的设备

2.2 使用df命令

df命令能够方便的查看所有已经挂载磁盘的使用情况。

常用参数 -h ,会把输出中的磁盘空间按照用户易读的形式显示,通常用M来代替兆字节,用G代替吉字节。

note:如果在卸载设备时,系统提示设备繁忙,无法卸载设备,通常是有进程还在访问该设备或使用该设备上的文件。这时可用lsof命令获得使用它的进程信息,然后在应用中停止使用该设备或停止该进程。lsof命令的用法很简单:lsof /path/to/device/node,或者lsof /path/to/mount/point。

2.3 使用du命令

du命令可以显示某个特定目录(默认情况下是当前目录)的磁盘使用情况。

du命令常见命令行参数

  1. -c 显示所有已列出文件总的大小
  2. -h 按用户易读的格式输出大小,即用K代替千字节,用M代替兆字节,用G代替吉字节
  3. -s 显示每个输出参数的总计

3.处理数据文件

3.1 排序数据

处理大量数据时的一个常用命令是sort命令。
sort命令是对数据进行排序的。
默认情况下,sort命令按照会话指定的默认语言的排序规则对文本文件中的数据行排序。
-n参数,它会告诉sort命令把数字识别成数字而不是字符,并且按值排序
-M参数,按月排序。Linux的日志文件经常会在每行的起始位置有一个时间戳,用来表明事件是什么时候发生的。
-k和-t参数在对按字段分隔的数据进行排序时非常有用,可以用**-t参数来指定字段分隔符**,然后用**-k参数来指定排序的字段**。
其余参数可参考 man sort。

3.2 搜索数据

grep命令会在输入或指定的文件中查找包含匹配指定模式的字符的行。

3.3 压缩数据

Linux包含了多种文件压缩工具
在这里插入图片描述

3.4 归档数据

tar命令最开始是用来将文件写到磁带设备上归档的,然而它也能把输出写到文件里。
tar命令格式如下:

tar function [options] object1 object2 ...

在这里插入图片描述
在这里插入图片描述
tar 每项功能后面都可以搭配多个选项执行命令。
如:tar -cvf test.tar test/ test2/

申明:文中没特殊注明,图皆来自Linux命令行与shell脚本编程大全<第三版>。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!