Linux Shell 脚本攻略 ---- 第九章 管理重任p

简介: 9.1 收集进程信息    1 进程是程序的运行实例,运行在一台计算机中的多个进程各自分配了一个称为进程ID的唯一标识数字    2 同一个程序的多个实例可以同时运行,但是他们的进程ID却互不相同    3 一个进程包括多种属性,例如拥有该进...


9.1 收集进程信息

    1 进程是程序的运行实例,运行在一台计算机中的多个进程各自分配了一个称为进程ID的唯一标识数字

    2 同一个程序的多个实例可以同时运行,但是他们的进程ID却互不相同

    3 一个进程包括多种属性,例如拥有该进程的用户,进程使用的内存数量,进程占用的CPU等

    4 ps是收集进程信息的重要工具,它提供了信息包括:拥有进程的用户,进程的起始时间,进程所对应的命令行路径,进程ID,进程所属的终端,进程使用的内存,进程占用的CPU

    5 top对应系统管理员来说是一个极为重要的命令,top命令默认输出一个占用cpu最多的进程列表

    6 借助ps命令可以找到命令名称对应的进程ID: ps -C command_name

    

9.2 杀死进程以及发送或响应信号

    1 在类UNIX环境中与进程相关的一个重要的概念就是信号,信号是一种进程间的通信机制,它用来中断运行的进程以执行某些操作

    2 列出所有可用的信号: kill -l

    3 终止一个进程: kill process_id   // kill命令默认发出一个term信号

    4 我们最经常用打的信号具体如下所示:

       SIGHUP 1 ---- 对控制进程或终端进行挂起检测

       SIGINT 2 ---- 当按下Ctrl+C时发送该信号

       SIGKILL 9 ---- 用于强行杀死进程

       SIGTERM 15 ---- 默认用于终止进程

       SIGTSTP 20 ---- 当按下Ctrl+Z时发送该信号

     5 强行杀死进程

        kill -s SIGKILL process_id   或  kill -9 process_id

     6 killall命令通过命令名终止进程: killall process_name

        killall强行杀死进程: killall -9 process_name

       

9.3 which/whereis/file/whatis平均负载

     1 which命令用来找出某个可执行程序的位置

     2 我们在终端输入命令的时候无需知道对应的可执行文件位于何处,终端会在一组位置中查找这个命令,如果可以找到,那么就执行该可执行文件,这一组位置由环境变量PATH指定

     3 我们可以导出并添加我们自己的命令搜索位置: export PATH=$PATH:/home/chenguolin/bin  //这个命令把/home/chenguolin/bin 添加到环境变量PATH

     4 whereis命令不仅返回命令的路径,还能够打印处其对应的命令手册的位置以及命令源代码的路径

        例如: wheris ls

     5 file命令是一个用来确定文件类型的命令

        file FILENAME  //命令会打印出文件FILENAME的类型

     6 whatis命令会输出作为参数的命令的简短描述信息: whatis ls

     

9.4 向用户终端发送信息

     1 wall命令用来向所有当前登录用户的终端写入消息,它可以将这消息传递给一台服务器中所有当前登录用户或是多台分散主机中的用户

     2 向终端中的所有的当前登录用户发送消息: echo "hello" | wall   // 这个命令会向所有的登录用户发送"hello",wall命令是接收来自标准输入的数据

     

9.5 收集系统信息

     1 打印当前系统的主机名: hostname  或 uname -n

     2 打印Linux内核版本,硬件结构等详细信息: uname -a

     3 打印内核发行版本: uname -r

     4 打印主机类型: uname -m

     5 打印CPU的相关信息: cat /proc/cpuinfo

     6 打印内存的详细信息: cat /proc/meninfo

     7 列出系统的分区信息: cat /proc/partitions 或 fdisk -l

 

9.6 用户管理

     1 useradd

        useradd命令可以用来创建新用户,命令语法图如下: useradd USER -p PASSWORD

        选项-m用来创建home目录,也可以提供-c FULLNAME提供用户的全名

     2 deluser 

        deluser命令用来删除用户,命令语法如下: deluser user

        --remove-all-files用来删除与用户相关的所有文件,包括home目录

     3 chsh命令用来修改用户的默认shell,命令语法: chsh USER -s shell

     4 passwd

        passwd命令用来修改用户密码,语法如下: passwd USER

     5 addgroup

        addgroup命令会为系统添加一个新的用户组,命令语法如下: addgroup GROUP

     6 delgroup

        delgroup命令会删除一个用户组,命令语法如下: delgroup GROUP


9.7 图像文件的批量缩放及格式转换

     1 convert命令是一个用来出来图像文件的命令

     2 将一种图像格式转换为另一种图像格式: convert file1.jpg file2.png

     3 指定缩放比例或输出图像的宽度和高度和将图像进行调整: convert image.png -resize 1024x768 image.png

     4 指定百分比缩放: convert image.png -resize "50%" image.png


相关文章
|
18天前
|
【linux】Shell脚本中basename和dirname的详细用法教程
本文详细介绍了Linux Shell脚本中 `basename`和 `dirname`命令的用法,包括去除路径信息、去除后缀、批量处理文件名和路径等。同时,通过文件备份和日志文件分离的实践应用,展示了这两个命令在实际脚本中的应用场景。希望本文能帮助您更好地理解和应用 `basename`和 `dirname`命令,提高Shell脚本编写的效率和灵活性。
79 32
linux应急响应检查脚本
通过这个脚本,可以快速收集系统的关键信息,有助于在发生问题时进行及时的应急响应和分析。
86 34
多种脚本批量下载 Docker 镜像:Shell、PowerShell、Node.js 和 C#
本项目提供多种脚本(Shell、PowerShell、Node.js 和 C#)用于批量下载 Docker 镜像。配置文件 `docker-images.txt` 列出需要下载的镜像及其标签。各脚本首先检查 Docker 是否安装,接着读取配置文件并逐行处理,跳过空行和注释行,提取镜像名称和标签,调用 `docker pull` 命令下载镜像,并输出下载结果。使用时需创建配置文件并运行相应脚本。C# 版本需安装 .NET 8 runtime。
41 1
|
5月前
|
一个用于添加/删除定时任务的shell脚本
一个用于添加/删除定时任务的shell脚本
155 1
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
本文介绍了Kafka集群的搭建过程,涵盖从虚拟机安装到集群测试的详细步骤。首先规划了集群架构,包括三台Kafka Broker节点,并说明了分布式环境下的服务进程配置。接着,通过VMware导入模板机并克隆出三台虚拟机(kafka-broker1、kafka-broker2、kafka-broker3),分别设置IP地址和主机名。随后,依次安装JDK、ZooKeeper和Kafka,并配置相应的环境变量与启动脚本,确保各组件能正常运行。最后,通过编写启停脚本简化集群的操作流程,并对集群进行测试,验证其功能完整性。整个过程强调了自动化脚本的应用,提高了部署效率。
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
6种方法打造出色的Shell脚本
6种方法打造出色的Shell脚本
116 2
6种方法打造出色的Shell脚本
Linux 如何更改默认 Shell
Linux 如何更改默认 Shell
110 0
Linux 如何更改默认 Shell
|
4月前
|
Shell脚本要点和难点以及具体应用和优缺点介绍
Shell脚本在系统管理和自动化任务中扮演着重要角色。尽管存在调试困难、可读性差等问题,但其简洁高效、易于学习和强大的功能使其在许多场景中不可或缺。通过掌握Shell脚本的基本语法、常用命令和函数,并了解其优缺点,开发者可以编写出高效的脚本来完成各种任务,提高工作效率。希望本文能为您在Shell脚本编写和应用中提供有价值的参考和指导。
150 1
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
144 2
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
这篇文章是关于Linux命令的总结,涵盖了从基础操作到网络配置等多个方面的命令及其使用方法。
115 1
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等