Linux命令行与shell脚本编程大全(第4版) 第一部分 Linux命令行

第 1 章 初识 Linux shell

1.1 Linux 初探

Linux 系统可划分为以下 4 部分。
 Linux 内核
 GNU 工具
 图形化桌面环境
 应用软件
在这里插入图片描述
内核主要负责以下 4 种功能。
 系统内存管理
 软件程序管理
 硬件设备管理
 文件系统管理

Systemd 机制机制和SysVinit机制

核创建了第一个进程(称为 init 进程)来启动系统中所有其他进程。当内核启动时,它会将 init 进程载入虚拟内存。内核在启动其他进程时,会在虚拟内存中给新进程分配一块专有区域来存储该进程用到的数据和代码。
在 Linux 中,有多种 init 进程实现,目前最流行的是以下两种。
 SysVinit:Linux 最初使用的是 SysVinit(SysV)初始化方法,该方法基于 Unix System V初始化方法。尽管如今很多 Linux 发行版已经不再使用 SysVinit 了,但在一些比较旧的Linux 发行版中还能找到其身影。
 systemd:systemd 初始化方法诞生于 2010 年,现在已经成为 Linux 发行版中最流行的初始化和进程管理系统。
查看本系统使用的使用什么类型
在这里插入图片描述

  • /proc 下的主要文件和目录介绍

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

  • 运行级别
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述在这里插入图片描述
    . 硬件设备管理
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

第 2 章 走进 shell

虚拟控制终端:在大多数 Linux 发行版中,可以使用简单的按键组合来访问某个 Linux 虚拟控制台。通常必须按下 Ctrl+Alt 组合键,然后再按一个功能键(F1~F7)来进入你要使用的虚拟控制台。功能键F2 键会生成虚拟控制台 2,F3 键会生成虚拟控制台 3,F4 键会生成虚拟控制台 4,
在这里插入图片描述

第 3 章 bash shell 基础命令

man手册
在这里插入图片描述
在这里插入图片描述

  • 正斜线与反斜线
    你会注意到 Linux 使用正斜线(/)而不是反斜线(\)来分隔文件路径中的目录。反斜线用的是 Windows 环境,那么可能得花点儿时间来适应。

  • Linux的文件系统
    Linux 会将文件存储在名为虚拟目录(virtual directory)的单个目录结构中。虚拟目录会将计算机中所有存储设备的文件路径都纳入单个目录结构。Linux 虚拟目录中比较复杂的部分是它如何来协调管理各个存储设备。我们称在 Linux 系统中安装的第一块硬盘为根驱动器。根驱动器包含了虚拟目录的核心,其他目录都是从那里开始构
    建的。

  • Linux常用文件
    在这里插入图片描述

\usr目录
在这里插入图片描述

在这里插入图片描述在这里插入图片描述

如果想查看目录的相关信息,而非目录所包含的内容,则除了-l 选项之外,还得添加-d 选项,即 ls -ld Directory-Name。

  • ls的过滤器
     问号(?)代表任意单个字符;
     星号(*)代表零个或多个字符。
    在这里插入图片描述

  • cp
    注意使用cp复制到目录下加上正斜线
    在这里插入图片描述

  • 可以根据需要“批量”地创建目录和子目录。为此,要使用 mkdir 命令的-p 选项

  • cat
    -n 选项会给所有的行加上行号: 只想给有文本的行加上行号,可以用-b 选项

第 4 章 更多的 bash shell 命令

  • tail
    tail -n 2 。-f 选项,该选项允许你在其他进程使用此文件时查看文件的内容。tail 命令会保持活动状态并持续地显示添加到文件中的内容。这是实时监测系统日志的绝佳方式。

  • ps
    -e 选项指定显示系统中运行的所有进程;-f 选项则扩充输出内容以显示一些有用的信息列
    在这里插入图片描述

在这里插入图片描述
要发送进程信号,必须是进程的属主或 root 用户

  • pkill 命令可以使用程序名代替 PID 来终止进程,这就方便多了

  • df
    df 命令可以方便地查看所有已挂载磁盘的使用情况

  • lsof
    lsof 命令是用于报告当前系统上所有打开的文件的工具。在 Linux 中,“一切皆文件”,所以文件不仅包括普通文件,还包括网络套接字、管道、设备节点等。当你指定一个设备节点或挂载点时,lsof 会扫描所有正在运行的进程,并列出哪些进程正在直接或间接地访问该设备或其上的文件。

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

  • sort
    -n ,该选项会告诉 sort 命令将数字按值排序
    -M,该选择可以将数字按月排序。Linux 的日志文件经常在每行的起始位置有一个时间戳,以表明事件是什么时候发生的
    先使用-t 选项指定字段分隔符,然后使用-k 选项指定排序字段

  • grep
    grep [options] pattern [file]
    反向搜索(输出不匹配指定模式的行),可以使用-v 选项
    要显示匹配指定模式的那些行的行号,可以使用-n 选项
    只想知道有多少行含有匹配的模式,可以使用-c 选项
    指定多个匹配模式,可以使用-e 选项来逐个指定

  • 数据压缩
    在这里插入图片描述

  • 数据归档
    在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

第 5 章 理解 shell

在这里插入图片描述

  • ps --forest 会显示进程之间的父子关系

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

外部命令程序通常位于/bin、/usr/bin、/sbin 或/usr/sbin 目录中。可以使用 which 命令和 type 命令找到其对应的文件名:每当执行外部命令时,就会创建一个子进程。这种操作称为衍生(forking)。在使用内建命令时,不需要衍生子进程。type -a 命令显示出了每个命令的两种实现(内建和外部)。注意,which 命令只显示外部命令文件。

输入!!,然后按 Enter 键,唤回并重用最近那条命令
在这里插入图片描述

第 6 章 Linux 环境变量

  • 在变量名、等号和值之间没有空格,
  • 局环境变量在设置该变量的父进程所创建的子进程中都是可见的。创建全局环境变量的方法是先创建局部变量,然后再将其导出到全局环境中。子 shell 甚至无法使用 export 命令改变父 shell 中全局环境变量的值
    在这里插入图片描述在这里插入图片描述
    在这里插入图片描述和修改变量一样,在子 shell 中删除全局变量后,无法将效果反映到父 shell 中。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 环境变量的持久化
    在这里插入图片描述

  • 数组变量

  • 在这里插入图片描述在这里插入图片描述在这里插入图片描述

第 7 章 理解 Linux 文件权限

  • useradd
    在这里插入图片描述在这里插入图片描述

  • usermod
    在这里插入图片描述

  • umask
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

SUID和SGID,粘滞位
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

  • 访问控制表

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

第 8 章 管理文件系统

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

第 9 章 安装软件

软件包管理系统基础工具是 dpkg 和 rpm。
在这里插入图片描述在这里插入图片描述
apt --installed list
apt show package_name
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值