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


目录
相关文章
|
3月前
|
Shell
一个用于添加/删除定时任务的shell脚本
一个用于添加/删除定时任务的shell脚本
120 1
|
8天前
|
消息中间件 Java Kafka
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
本文介绍了Kafka集群的搭建过程,涵盖从虚拟机安装到集群测试的详细步骤。首先规划了集群架构,包括三台Kafka Broker节点,并说明了分布式环境下的服务进程配置。接着,通过VMware导入模板机并克隆出三台虚拟机(kafka-broker1、kafka-broker2、kafka-broker3),分别设置IP地址和主机名。随后,依次安装JDK、ZooKeeper和Kafka,并配置相应的环境变量与启动脚本,确保各组件能正常运行。最后,通过编写启停脚本简化集群的操作流程,并对集群进行测试,验证其功能完整性。整个过程强调了自动化脚本的应用,提高了部署效率。
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
|
2月前
|
Shell Linux 测试技术
6种方法打造出色的Shell脚本
6种方法打造出色的Shell脚本
72 2
6种方法打造出色的Shell脚本
|
2月前
|
存储 Shell Linux
Linux 如何更改默认 Shell
Linux 如何更改默认 Shell
42 0
Linux 如何更改默认 Shell
|
2月前
|
XML JSON 监控
Shell脚本要点和难点以及具体应用和优缺点介绍
Shell脚本在系统管理和自动化任务中扮演着重要角色。尽管存在调试困难、可读性差等问题,但其简洁高效、易于学习和强大的功能使其在许多场景中不可或缺。通过掌握Shell脚本的基本语法、常用命令和函数,并了解其优缺点,开发者可以编写出高效的脚本来完成各种任务,提高工作效率。希望本文能为您在Shell脚本编写和应用中提供有价值的参考和指导。
69 1
|
2月前
|
Ubuntu Shell 开发工具
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
65 2
|
3月前
|
Web App开发 网络协议 Linux
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
这篇文章是关于Linux命令的总结,涵盖了从基础操作到网络配置等多个方面的命令及其使用方法。
80 1
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
|
2月前
|
Ubuntu Linux Shell
Linux 系统中的代码类型或脚本类型内容
在 Linux 系统中,代码类型多样,包括 Shell 脚本、配置文件、网络配置、命令行工具和 Cron 定时任务。这些代码类型广泛应用于系统管理、自动化操作、网络配置和定期任务,掌握它们能显著提高系统管理和开发的效率。
|
3月前
|
监控 网络协议 Shell
ip和ip网段攻击拦截系统-绿叶结界防火墙系统shell脚本
这是一个名为“小绿叶技术博客扫段攻击拦截系统”的Bash脚本,用于监控和拦截TCP攻击。通过抓取网络数据包监控可疑IP,并利用iptables和firewalld防火墙规则对这些IP进行拦截。同时,该系统能够查询数据库中的白名单,确保合法IP不受影响。此外,它还具备日志记录功能,以便于后续分析和审计。
67 6
|
2月前
|
运维 监控 Shell
深入理解Linux系统下的Shell脚本编程
【10月更文挑战第24天】本文将深入浅出地介绍Linux系统中Shell脚本的基础知识和实用技巧,帮助读者从零开始学习编写Shell脚本。通过本文的学习,你将能够掌握Shell脚本的基本语法、变量使用、流程控制以及函数定义等核心概念,并学会如何将这些知识应用于实际问题解决中。文章还将展示几个实用的Shell脚本例子,以加深对知识点的理解和应用。无论你是运维人员还是软件开发者,这篇文章都将为你提供强大的Linux自动化工具。