栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

【Linux学习笔记②】——基础入门(下)⭐【进程管理 备份与恢复 元字符与正则表达式】⭐

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【Linux学习笔记②】——基础入门(下)⭐【进程管理 备份与恢复 元字符与正则表达式】⭐


✈️ 南邮迎新开始啦!


文章目录
  • 一、进程管理
    • 1.1 会话(Session) 和 screen 命令
    • 1.2 进程组与作业
    • 1.3 控制终端
    • 1.4 守护进程
    • 1.5 与进程相关的其他命令
      • 1.5.1 pstree 命令
      • 1.5.2 ps 命令
      • 1.5.3 kill 命令
      • 1.5.4 jobs 命令
      • 1.5.5 bg 命令
      • 1.5.6 fg 命令
  • 二、Linux的备份与恢复
    • 2.1 面向文件的备份与恢复
      • 2.1.1 tar 命令
      • 2.1.2 gzip 命令
      • 2.1.3 bzip2 命令
      • 2.1.4 cpio 命令
    • 2.2 面向文件系统的备份与恢复
      • 2.2.1 dump 命令
      • 2.2.2 restore命令
    • 2.3 面向设备的备份与恢复(dd 命令)
  • 三、Linux应用软件包管理
    • 3.1 应用软件包的分类
    • 3.2 RPM 软件包的管理(rpm 命令选项)
  • 四、输入输出重定向和管道
    • 4.1 输入输出重定向(cat 命令)
    • 4.2 管道
      • 4.2.1 无名管道(cat 命令)
      • 4.2.2 命名管道(mkfifo 命令 和 cat 命令)
  • 五、元字符与正则表达式
    • 5.1 元字符
      • 5.1.1 通配符
      • 5.1.2 屏蔽元字符
    • 5.2 正则表达式(grep 命令)
  • 六、参考附录:


Linux 入门之旅 ☁️

上一篇文章链接: 【Linux学习笔记①】——基础入门(上)⭐【Shell命令 目录和文件 用户和用户组 权限管理 】⭐
下一篇文章链接:  …


一、进程管理

  ● 进程和程序的区别是什么?
  答:程序是保存在磁盘可执行映像中的机器代码指令和数据的集合。进程是计算机程序的一次运行。

  ● 操作系统中进程的三种基本状态是什么?

  ① 就绪状态:进程已分配到除 CPU 以外的所有必要的资源,只要获得处理机便可立即执行。
  ② 执行状态:进程已获得处理机,其程序正在处理机上执行。
  ③ 阻塞状态:正在执行的进程,由于等待某个事件发生而无法执行时,便放弃处理机而处于阻塞状态。引起进程阻塞的事件包括等待 I/O 完成、申请缓冲区不能满足、等待信件(信号)等。


1.1 会话(Session) 和 screen 命令

  ● 当用户在某个终端上登录时,系统创建一个新的会话,以会话 ID 的形式记录在进程中。

  ● 会话开始于用户登录,结束于用户退出。

  ● 同一终端上派生的所有进程通常具有相同的会话 ID ,但不同终端上派生进程的会话 ID 不同。

  ● 一个会话中有一个领头进程和终端相连,负责从终端上接收输入。

  ● screen 命令:
  ■ 语法:screen [选项]

  ▶功能:用于统一管理多个会话,防止因为网络中断导致的 “掉线” 。
  ◆ 说明:
    ① 直接输入一个 “ screen” 即创建新会话。
    ② 输入 “Ctrl+A+D” 退出当前会话。
    ③ 重新进入该会话只需要执行 “screen –r ID号码“ 即可。


1.2 进程组与作业

  ● 进程组:完成某种作业的相关进程。其以进程组 ID 的形式记录在进程中。

  ● 同组进程的进程组 ID 相同,属于不同组的进程拥有不同的进程组 ID 。

  ● 一个进程组至少包含一个进程,每个进程组中包含一个领头进程,领头进程的进程 ID 等于进程组 ID 。

  ● 一个终端会话可包含多个进程组(作业),根据进程运行方式的不同,可将进程分为前台进程和后台进程。

  ● 前台进程:当在 Shell 提示符下键入一命令并按回车时,Shell 将一直等待,直到命令执行结束,在此期间,用户不能在键盘上键入其他命令,以这种方式运行的进程称为前台进程,在一个会话中只能有一个前台进程组。

  ● 后台进程:在运行命令时,在命令的末尾加上 “&” 字符,使其运行在后台,用户可获得对终端的控制权,可在提示符下重新输入命令,以这种方式运行的进程称为后台进程,后台进程运行的优先级较低。

  ● 作业:前台进程和后台进程都称为作业。

  ● 当进程在前台运行时,从键盘上按下 Ctrl+z ,这样可使前台进程挂起。

  ● 作业有前台、后台和挂起三种状态。Shell 可使作业在这三种状态之间迁移。


1.3 控制终端

  ● 当会话的领头进程打开一个终端之后,该终端就成为会话的控制终端。(控制终端就是展示在我们前面的 “黑框” 终端,受我们控制)

  ● 一个会话只能有一个控制终端,一个控制终端也只能控制一个会话。控制进程属于前台进程组,后台进程组不拥有控制终端。


1.4 守护进程

  ● 守护进程是一种运行在后台的特殊进程,它摆脱了与控制终端的关系,当终端丢失或关闭,不会影响守护进程的正常运行。

  ● 守护进程通常周期性地运行在系统中,等待某种事件的发生,为用户提供某种服务。例如: ftp 服务和 Web 服务等,守护进程通常在系统开机时自动启动。


1.5 与进程相关的其他命令 1.5.1 pstree 命令

  ■ 语法:pstree [选项]
  ▶功能:显示系统中进程之间的继承关系。【注:init进程为所有进程的祖先】


1.5.2 ps 命令

  ■ 语法:ps [选项]
  ▶功能:显示系统中进程的状态和属性。

常用选项含义
-a显示终端上的所有进程,包括其他用户的进程
-r只显示正在运行的进程
-x显示没有控制终端的进程
-u打印用户格式,显示有效用户名
-l长列表方式
-e显示所有进程
-f全格式
-j按作业格式输出

  ● 在使用 ps 命令时显示进程的运行状态时,显示的信息中涉及较多的字段名,下面是常用的字段名及其含义:

字段名含义
USER进程所有者
PID进程ID
%CPUCPU占用率
%MEM内存占用率
VSZ进程的内存映像所占的空间(虚拟内存占用空间)
RSS进程运行在用户空间中所占的物理字节大小(实际内存空间)
TTY进程执行所在的终端
STAT进程的状态
START进程开始运行时间
TIME进程占有CPU的时间,以分和秒表示
COMMAND启动命令的命令行

  ● 进程状态的字符表示为:

字段名含义
S可中断的睡眠状态(可信号唤醒)
D不可中断的睡眠状态(不可信号唤醒,等待资源,很少见)
R正在运行
Z僵死状态, 进程已终止, 但进程描述符存在
T停止状态

  ● 举个栗子:


1.5.3 kill 命令

  ■ 语法:kill [选项] 进程的PID
  ▶功能:将指定信号发送给指定的进程或进程组,如果没有指定信号,则发送 term 信号,用于结束进程。

常用选项含义
-l列出所有可用的信号名称
-s指定发送的信号

  ● 进程的 PID 应该符合以下规则:

进程PID含义
>0将信号发送给进程标识为 PID 的进程
=0将信号发送给当前进程所在组的所有进程
=-1将信号发送给所有进程标识大于 1 的进程
-n,且n>1将信号发送给进程组标识为 n 的所有进程

  ● 举个栗子:

kill  -l	        # 列出所有信号
kill  -9 323	 	# 发送信号 9(KILL) 终止 PID 为 323 的进程
kill  -9  -1223 	# 杀死进程组号为 1223 中的所有进程
kill  -TERM  0  	# 发送信号 TERM 给当前进程组中的所有进程
kill  -9    -1      # 发送信号 KILL 给所有进程标识大于 1 的进程


1.5.4 jobs 命令

  ■ 语法:jobs
  ▶功能:列出当前的作业


1.5.5 bg 命令

  ■ 语法:bg 作业号
  ▶功能:把命令程序调到后台


1.5.6 fg 命令

  ■ 语法:fg 作业号
  ▶功能:把后台进程调入前台



二、Linux的备份与恢复

  ● 备份与恢复是一对互逆的数据处理技术,分成三个层次:
    ① 面向文件的备份与恢复
    ② 面向文件系统的备份与恢复
    ③ 面向设备的备份与恢复


2.1 面向文件的备份与恢复

  ● 面向文件的备份与恢复是以文件或目录作为基本的单位。不需考虑使用何种类型的文件系统或设备的方法。

  ● 归档:将多个文件或目录打包为一个目标文件的过程。该目标文件称为归档文件。这样,便于归档文件在网络上进行传输,便于对归档文件进行管理。

  ● 压缩:通过某种算法将一批数据以更小体积存储的一种技术。可减少归档文件在文件系统中占用的空间,也提高了传输效率。


2.1.1 tar 命令

  ■ 语法:tar [选项] 文件或目录
  ▶功能:将文件或目录归档至存储设备或文件,或将归档文件恢复至目录。

常用选项含义
-c建立新的归档文件
-x从归档文件中解出文件
-f对普通文件进行操作

  ● 为减少归档文件的体积,常配合使用压缩软件,对归档文件进行压缩,通常归档过程中使用的算法可通过归档文件的后缀名进行区分。

后缀名含义
.tar直接进行归档 tar cf
.gz使用 gzip 软件压缩
.bz2使用 bzip2 软件压缩
.tar.gz归档后再用 gzip 软件压缩
.tar.bz2归档后再用 bzip2 软件压缩


2.1.2 gzip 命令

  ■ 语法:gzip [选项] 文件名
  ▶功能:GNU的压缩程序。只对单个文件进行压缩。

常用选项含义
-c将压缩的资料输出到显示屏上
-d解压缩
-t检验一个压缩档的一致性


2.1.3 bzip2 命令

  ■ 语法:bzip2 [选项] 文件名称
  ▶功能:压缩与解压缩工具【注:tar 对文件或目录进行打包备份,生成 .tar 文档,gzip、bzip2 都是压缩程序。在 tar 命令中可以直接调用 gzip、bzip2。gzip 比 bzip2 快,但压缩率相对较低。】

常用选项含义
-c将压缩的资料输出到显示屏上
-d解压缩
-z压缩


2.1.4 cpio 命令

  ■ 语法:cpio [选项] 归档文件或设备文件
  ▶功能:复制输入输出命令,将文件归档至设备或归档文件,或从设备或归档文件中还原文件。与 tar 格式兼容,支持许多老式磁带格式。

常用选项含义
− v -v −v版本模式
− O -O −O创建归档文件
− I -I −I恢复归档文件


2.2 面向文件系统的备份与恢复

  ● 面向文件系统的备份与恢复需要考虑文件系统的结构,与文件系统的类型有关,但与使用何种设备无关。

2.2.1 dump 命令

  ■ 语法:dump [选项] 文件 文件系统或目录
  ▶功能:还原 dump 备份。

常用选项含义
− - −[0~9]备份的层级
− f -f −f指定备份的设备或文件
− u -u −u在系统中记录备份文件系统的层级和时间等信息


2.2.2 restore命令

  ■ 语法:restore [选项] 文件
  ▶功能:备份文件系统。

常用选项含义
− f -f −f从指定设备或文件中还原备份的数据
− i -i −i使用交互方式,在还原过程中向用户提出咨询
− r -r −r进行还原操作


2.3 面向设备的备份与恢复(dd 命令)

  ● 面向设备的备份是最低层次的备份形式,无论设备中的数据如何组织,都会将整个设备或分区拷贝至其它设备。当需要恢复时,只需重新复制即可,这种备份方式与设备所用的文件系统无关。

  ■ 语法:dd [选项]
  ▶功能:直接进行设备存取,用指定大小的块复制一个文件,并在拷贝的同时进行指定的转换。

常用选项含义
of=file输出到文件 file 中,而不是标准输出
if=file输入文件 file, file 也不是标准输入
bs=size设置 读/写 缓冲区的字节数


三、Linux应用软件包管理 3.1 应用软件包的分类

  ● 建立一个 Linux 系统除了 Linux 内核,还需要安装大量的应用软件。Linux 系统提供了软件软件包管理机制。软件包是由若干文件通过某种格式组织的文件,可借助工具对软件包进行自动安转、升级等。在 Linux 系统中,主要有两种类型的软件包:
  ① RPM(RedHat Package Management):由 Red Hat 公司推出的软件包管理器。
  ② APT(Advanced Package Tool):它是 Debian 软件包管理工具,很好地解决了软件包的依赖关系。APT软件包的命名规则与RPM相同,只是后缀名为 deb。


3.2 RPM 软件包的管理(rpm 命令选项)

  ■ 语法:rpm [选项] 软件包名或文件名
  ▶功能:负责安装、升级、查询和卸载 RPM 软件包。

常用选项含义
− i -i −i安装软件包
− q -q −q查询软件包
− e -e −e卸载软件包
− u -u −u升级软件包

  ● 应用软件包在 Linux 系统的安装位置遵从一定的规范,不同性质的文件所安装的位置不同。

文件类型安装目录
普通执行程序文件/user/bin
服务器执行程序文件和管理程序文件/usr/sbin
应用程序配置文件/etc
应用程序文档文件/usr/share/doc
应用程序手册页文件/usr/share/man



四、输入输出重定向和管道

  ● 每个在终端上运行的用户进程均由Shell创建,并从 Shell 处继承环境和资源等信息。

  ● 已打开的标准输入文件、标准输出文件和标准错误输出文件,简称标准输入、标准输出和标准错误输出,这些打开文件的 描述符 分别为 0、1 和 2 。

文件文件描述符默认设备
标准输入0键盘
标准输出1显示器
标准错误输出2显示器


4.1 输入输出重定向(cat 命令)

  ● 输入重定向:将本应从标准输入设备接收的数据改变为从其他文件中输入的技术。

  ■ 语法:命令 <输入文件 或 命令 0<输入文件
  ▶功能:将键盘从标准输入中分离出来,并与输入文件关联,命令从输入文件中获取输入数据,而不是键盘。

"举例"
cat  



  ● 输出重定向:将本因从标准输出设备输出的数据改变输出至其他文件的技术。
  ■ 语法一:命令 n>输出文件
  ▶功能:将输出内容覆盖至重定向文件。

  ■ 语法二:命令 n>>输出文件
  ▶功能:将输出内容追加至重定向文件。

数字 n含义重定向符含义
1标准输出>将输出内容覆盖至重定向文件
2标准错误输出>>将输出内容追加至重定向文件
&标准输出和标准错误输出


4.2 管道

  ● 管道是实现进程间通信的方法。

  ● 将一个进程的标准输出作为另一个进程的标准输入。

  ● 管道可分为无名管道和命名管道。


4.2.1 无名管道(cat 命令)

  ● 无名管道是在内存中建立文件描述,而不是在文件系统中建立 i 结点。在使用完无名管道后,内存中的文件描述符将被自动释放。

  ■ 语法: 命令1 | 命令2 | … [命令 n]
  ▶功能:将命令 1 的标准输出作为命令 2 的标准输入。接着将命令 2 的标准输出作为命令 3 的标准输入,依次类推。


4.2.2 命名管道(mkfifo 命令 和 cat 命令)

  ● 命名管道通过在文件系统建立特殊的命名管道文件,用户通过对命名管道文件的读写,实现两个进程之间的通信。

  ● mkfifo 命令
  ■ 语法:mkfifo [选项] 文件名
  ▶功能:创建命名管道文件。【特点:一个读,一个写。内核协调,自动堵塞】



五、元字符与正则表达式 5.1 元字符

  ● 元字符用于表达某些特定而非自身含义的特殊字符,它定一种匹配字符的模式语言。

  ● 元字符的定义与语言环境有关,在不同的 Shell 版本以及一些文本处理程序中对元字符的定义不尽相同。


5.1.1 通配符

  ● Shell 元字符也称为通配符,经常出现在 Shell 命令中,用于通配文件和目录下表给出一些常用的元字符及其含义。

元字符含义
?匹配任意一个字符
*匹配任意数量的字符
[abc]匹配方括号中的任意一个字符
[a-z]匹配方括号中表示字符范围内的任意一个字符
[!1-9]匹配除了方括号中表示范围内的字符

  ● 举一个栗子:


  ◆ 说明:
    ① 先创建 3 个 .txt 文件,分别命名如图所示。
    ② “ l s ∗ . t x t lsquad *.txt ls∗.txt ” → 找查后缀名为 txt 的所有文件


5.1.2 屏蔽元字符

  ● 有时需要在命令中使用元字符本身,不希望元字符表示其特殊含义,有两种方法来处理:① 在包含元字符的字符串两边加单引号或双引号。② 在元字符前使用反斜杠 “”。

"举例"
ls "ab*cd"      	; 查找文件名为 "ab*cd" 的文件                     
ls  abc*def		; 查找文件 "abc*def"


5.2 正则表达式(grep 命令)

  ● 正则表达式是一个字符模板,用在文本处理程序中搜索匹配的字符。

  ● 这些文本处理程序包括 ed、ex、vi、grep、egrep、sed 和 awk 等。

  ■ 语法:grep [选项] 正则表达式 文本文件列表
  ▶功能:从文本文件中搜索匹配指定正则表达式的所有行。

元字符含义
^行首
$行尾
char转义后面的字符

  ● 举个栗子:首先在这个 txt 文本文件中编辑 4 行代码。


  然后使用 grep 命令:



六、参考附录:

[1] 《GNU/Linux编程》
人民邮电出版社

上一篇文章链接: 【Linux学习笔记①】——基础入门(上)⭐【Shell命令 目录和文件 用户和用户组 权限管理 】⭐.

下一篇文章链接:  …


⭐️ ⭐️

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/308995.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号