Linux——进程管理

目录

作业和进程的概念

程序与进程的关系

查看进程信息——ps,top

ps命令

top命令

设置进程的优先级——nice,renice

nice命令

renice命令

查看进程信息——pgrep,pstree

pgrep命令

pstree命令

切换进程——jobs,bg,fg

前台、后台作业

终止进程——kill

计划任务管理——at

计划任务管理——crontab

crontab任务的配置格式

添加crontab调度


作业和进程的概念

        Linux是一个多用户多任务的操作系统。

        多用户是指多个用户可以在同一时间使用计算机系统; 多任务是指Linux可以同时执行几个任务,它可以在还未执行完一个任务时又执行另一项任务。

        为了完成这些任务,系统上同时运行着多个进程,正在执行的一个或多个相关进程称为一个作业。

程序与进程的关系

程序: 保存在硬盘、光盘等介质中的可执行代码和数据 是静态保存的代码。

进程:在CPU及内存中运行的程序代码 是动态执行的代码 父、子进程:每个进程可以创建一个或多个进程。

        进程与程序是有区别的进程不是程序,虽然它由程序产生。程序只是一个静态的指令集合,不占系统的运行资源:而进程是一个随时都可能发生变化的、动态的、使用系统运行资源的程序。而且一个程序可以启动多个进程。
        进程:程序的动态执行过程;一个程序可以有多个进程;一个或多个相关进程有时也被称作一个作业

查看进程信息——ps,top

ps命令

用途:显示正在执行的进程统计信息

格式:常用:ps [选项]

常用命令选项

  • -A
  • -a:终端上的所有进程
  • -e:系统中的所有进程
  • -l:长格形式
  • -u:面向用户的格式
  • -x:后台进程的信息

PID:该进程在系统中的数字ID号,在当前系统中是唯一的;

top命令

用途:查看动态的进程排名信息

设置进程的优先级——nice,renice

nice命令

        是反应一个进程优先级状态的值,取值范围是-20至19,一共40个级别。 这个值越小,表示进程“优先级”越高,而值越大“优先级”越低。

        直接运行nice,显示当前程序的运行优先级;

格式:nice [-优先级] 命令

#nice
#0
#nice -n 21 nice

#19
#nice -5 ftp     #调整ftp进程的优先级为5

#nice --5 ftp    #调整ftp进程的优先级为-5

renice命令

对一个正在运行的进程进行nice值的调整。

格式:renice 优先级值 [选项] 命令

常用命令选项

  • -p:进程号所标识进程的优先级
  • -u:指定用户所启动进程的优先级
  • -g:群组

renice 8 -p 2896

查看进程信息——pgrep,pstree

pgrep命令

用途:根据特定条件查询进程PID信息

[root@localhost ~]# pgrep "init"

1

[root@localhost ~]# pgrep -l "log"

2538 syslogd

2541 klogd

3221 login 

pstree命令

用途:以树型结构显示各进程间的关系

[root@localhost ~]# pstree -aup

init,1  

├─acpid,2866  

├─atd,3060  

├─auditd,2516  

│   ├─python,2518 /sbin/audispd  

│   └─{auditd},2517  

├─automount,2842 ……

切换进程——jobs,bg,fg

显示作业命令

jobs -p 进程号      

jobs -l 进程号+作业号

ctrl+Z 挂起当前作业

ctrl+C 终止当前作业

     前台、后台作业

        前台和后台运行作业作业可以在前台,也可以在后台运行,在同时间只能有一个作业在前台运行。前台作业是指正对它进行交互操作的作业,它从键盘接受输入,并将输出送往屏幕。另一方面,后台作业不接受中断的输入。它们在运行时不需要交互操作,只是默默运行。

bg [作业号]     #前台→后台

fg  [作业号]     #后台→前台

将一个作业放到后台运行的一种方法是在命令后面加“&”字符,ex:$ yes >/dev/null &

终止进程——kill

kill -s 信号| -p 进程号

kill -l [信号]

kill 进程号

kill -9 用于强制终止

当使用作业号来标识作业时,在作业号前面要加“%”。若该作业的作业号为1,可用下面的命令
$ ki11 %1

kill用于终止指定PID号的进程

killall用于终止指定名称的所有进程

计划任务管理——at

 在指定的日期、时间点自动执行预先设置的一些命令操作,属于一次性计划任务

服务脚本名称:/etc/init.d/atd

设置格式:at  [HH:MM]  [yyyy-mm-dd]

[root@localhost ~]# service atd start

启动 atd:                                               [确定]

[root@localhost ~]# at 23:45

at> shutdown -h now

at> <EOT>

job 1 at 2009-09-14 23:45    # 按Ctrl+D键提交任务

[root@localhost ~]# atq 1      

2009-09-14 23:45 a root

计划任务管理——crontab

按照预先设置的时间周期(分钟、小时、天……)重复执行用户指定的命令操作,属于周期性计划任务

管理cron计划任务

编辑计划任务:crontab  -e  [-u  用户名]

查看计划任务:crontab  -l   [-u  用户名]

删除计划任务:crontab  -r   [-u  用户名]

ex:

[root@localhost root]# crontab -l -u jerry

55 23 * * 7  /bin/cp /etc/passwd /home/jerry/pwd.txt

[root@localhost root]# crontab -r -u jerry

[root@localhost root]# crontab -l -u jerry

no crontab for jerry

crontab任务的配置格式

时间数值的特殊表示方法

  • *    表示该范围内的任意时间
  • ,    表示间隔的多个不连续时间点
  • -    表示一个连续的时间范围
  • /    指定间隔的时间频率

应用示例

0  17  *  *  1-5        周一到周五每天17:00

30  8  *  *  1,3,5    每周一、三、五的8点30分

0  8-18/2  *  *  *    8点到18点之间每隔2小时

0  *  */3  *  *        每隔3天 

添加crontab调度

vi crontab -e

00 17 * * 5 tar -czf  /home/hellon/data /backup/hellen-data.tar.gz

示例1(root用户):

每天早上7:50自动开启sshd服务,22点50时关闭

50 7 * * * systemctl start sshd

50 22 * * * systemctl stop sshd

每隔5天清空一次FTP服务器公共目录/var/ftp/pub

* * */5 * * rm -rf /var/ftp/pub/*

每周六的7:30时,重新启动httpd服务

30 7 * * 6 restart httpd

每周一、三、五的17:30时,打包备份/etc/httpd目录

30 17 * * 1,3,5 tar -zcvf /backup/httpd_backup_$(date +\%Y\%m\%d).tar.gz /etc/httpd

示例2(jerry用户):

每周日晚上23:55时将“/etc/passwd”文件的内容复制到宿主目录中,保存为pwd.txt文件 

55 23 * * 7 cp /etc/passwd /home/jerry/pwd.txt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/293553.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mybatis 一对多的连接查询

4.1 嵌套查询 vs 连接查询sql不同:连接查询:涉及多表连接, 当出现重复列时 需要对重复的列进行 列的重命名嵌套查询: 就是单表查询参与的mapper文件不同:连接查询: 在一个mapper文件中 配置即可嵌套查询: 需要 在 association或collection 中 通过 select 调用 另外的mapper…

蓝桥杯算法题-正则问题

问题描述 考虑一种简单的正则表达式&#xff1a; 只由 x ( ) | 组成的正则表达式。 小明想求出这个正则表达式能接受的最长字符串的长度。 例如 ((xx|xxx)x|(x|xx))xx 能接受的最长字符串是&#xff1a; xxxxxx&#xff0c;长度是 6。 输入格式 一个由 x()| 组成的正则表达式。…

MySQL事务与锁

什么是事务 事务是数据库管理系统&#xff08;DBMS&#xff09;执行过程中的一个逻辑单位&#xff0c;由一个有限的数据库操作序列构成。 事务的4大特性&#xff1a; 原子性&#xff08;Atomicity&#xff09;一致性&#xff08;Consistent&#xff09;隔离性&#xff08;lso…

Python 用pygame简简单单实现一个打砖块

# -*- coding: utf-8 -*- # # # Copyright (C) 2024 , Inc. All Rights Reserved # # # Time : 2024/3/30 14:34 # Author : 赫凯 # Email : hekaiiii163.com # File : ballgame.py # Software: PyCharm import math import randomimport pygame import sys#…

Linux 个人笔记之三剑客 grep sed awk

文章目录 零、预一、grep 文本过滤工具基础篇实战篇 二、sed 字符流编辑器基础篇实战篇 三、awk 文本处理工具基础篇实战篇 四、附xargsuniq & sort基础篇实战篇 cut 零、预 bash 的命令行展开 {} $ echo file_{1..4} file_1 file_2 file_3 file_4$ echo file_{a..d} file_…

【项目技术介绍篇】若依管理系统功能介绍

作者介绍&#xff1a;本人笔名姑苏老陈&#xff0c;从事JAVA开发工作十多年了&#xff0c;带过大学刚毕业的实习生&#xff0c;也带过技术团队。最近有个朋友的表弟&#xff0c;马上要大学毕业了&#xff0c;想从事JAVA开发工作&#xff0c;但不知道从何处入手。于是&#xff0…

如何去为快消品做商业模式——循环购模式给你答案!

大家好&#xff0c;我是吴军&#xff0c;来自一家专注于软件开发与商业模式创新的公司。 我们公司的主要业务是开发商城系统&#xff0c;以及为客户量身打造独特的商业模式。至今&#xff0c;我们已经成功创造了超过两百种各具特色的商业模式。 今天&#xff0c;我想为大家介绍…

v3-admin-vite 改造自动路由,view页面自解释Meta

需求 v3-admin-vite是一款不错的后端管理模板&#xff0c;主要是pany一直都在维护&#xff0c;最近将后台管理也进行了升级&#xff0c;顺便完成一直没时间解决的小痛痒&#xff1a; 在不使用后端动态管理的情况下。我不希望单独维护一份路由定义&#xff0c;我希望页面是自解…

Git命令上传本地项目至github

记录如何创建个人仓库并上传已有代码至github in MacOS环境 0. 首先下载git 方法很多 这里就不介绍了 1. Github Create a new repository 先在github上创建一个空仓库&#xff0c;用于一会儿链接项目文件&#xff0c;按照自己的需求设置name和是否private 2.push an exis…

【LeetCode】LeetCode 547. 省份数量(Java版 什么是并查集)

&#x1f4dd;个人主页&#xff1a;哈__ 期待您的关注 一、题目描述 有 n 个城市&#xff0c;其中一些彼此相连&#xff0c;另一些没有相连。如果城市 a 与城市 b 直接相连&#xff0c;且城市 b 与城市 c 直接相连&#xff0c;那么城市 a 与城市 c 间接相连。 省份 是一组直…

Python爬虫-懂车帝城市销量榜单

前言 本文是该专栏的第23篇,后面会持续分享python爬虫干货知识,记得关注。 最近粉丝留言咨询某汽车平台的汽车销量榜单数据,本文笔者以懂车帝平台为例,采集对应的城市汽车销量榜单数据。 具体的详细思路以及代码实现逻辑,跟着笔者直接往下看正文详细内容。(附带完整代码…

【NLP笔记】大模型prompt推理(提问)技巧

文章目录 prompt概述推理&#xff08;提问&#xff09;技巧基础prompt构造技巧进阶优化技巧prompt自动优化 参考链接&#xff1a; Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods in Natural Language Processing预训练、提示和预测&#xff1a;NL…

如何使用Windows电脑部署Lychee私有图床网站并实现无公网IP远程管理本地图片

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法|MySQL| ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-MSVdVLkQMnY9Y2HW {font-family:"trebuchet ms",verdana,arial,sans-serif;f…

HarmonyOS ArkTS 骨架屏加载显示(二十五)

目录 前言1、骨架屏代码显示2、代码中引用3、效果图展示 前言 所谓骨架屏&#xff0c;就是在页面进行耗时加载时&#xff0c;先展示的等待 UI, 以告知用户程序目前正在运行&#xff0c;稍等即可。 等待的UI大部分是 loading 转圈的弹窗&#xff0c;有的是自己风格的小动画。其实…

《QDebug 2024年3月》

一、Qt Widgets 问题交流 1. 二、Qt Quick 问题交流 1.Qt5 ApplicationWindow 不能使用父组件 Window 的 transientParent 属性 ApplicationWindow 使用 transientParent 报错&#xff1a; "ApplicationWindow.transientParent" is not available due to compone…

亚马逊自养号测评:风险剖析与防范策略全解析

亚马逊平台竞争激烈&#xff0c;美站乃至全球市场的卖家为提升产品排名和销量&#xff0c;纷纷用起了自养号测评。然而&#xff0c;自养号测评技术因其较高的技术门槛&#xff0c;使得许多卖家因缺乏对其原理和底层环境搭建的了解&#xff0c;而面临账号关联和封禁的风险。本文…

SpringBoot常见注解有哪些

Spring Boot的核心注解是SpringBootApplication , 他由几个注解组成 : ● SpringBootConfiguration&#xff1a; 组合了- Configuration注解&#xff0c;实现配置文件的功能&#xff1b; ● EnableAutoConfiguration&#xff1a;打开自动配置的功能&#xff0c;也可以关闭某个自…

实景三维技术:开启自然资源管理的新篇章

随着科技的不断进步&#xff0c;实景三维技术已经在多个领域得到了广泛的应用。而在自然资源管理领域&#xff0c;实景三维技术更是发挥着越来越重要的作用。本文将介绍实景三维在自然资源管理领域的应用&#xff0c;探讨其带来的优势和变革。一、什么是实景三维技术&#xff1…

Python多任务处理---多线程

引入 生活中&#xff0c;我们在电脑上打开了一个word, 这个word对操作系统来说就是一个进程。我们在进行word操作的时候&#xff0c;比如在你打字的时候&#xff0c;该word同时可以进行文字检查。发现了没&#xff0c;在同一个进程中&#xff0c;我们也可以进行同时操作。…

Rust 02.控制、引用、切片Slice、智能指针

1.控制流 //rust通过所有权机制来管理内存&#xff0c;编译器在编译就会根据所有权规则对内存的使用进行 //堆和栈 //编译的时候数据的类型大小是固定的&#xff0c;就是分配在栈上的 //编译的时候数据类型大小不固定&#xff0c;就是分配堆上的 fn main() {let x: i32 1;{le…