Linux 进程与计划任务

进程

查看进程:ps 只显示当前用户会话打开的进程

a:显示当前终端下所有进程信息,包括其他用户的进程

u:显示以用户为主的格式输出进程信息

x:显示当前用户在所有终端下的进程信息

-e:显示系统内所有进程信息

-f:显示完整格式的列表数据。

-l:显示长格式

USER:创建进程的用户

PID:进程ID

%CPU:进程占用CPU的百分比

%MEM:进程占用物理内存的百分比

VSZ:进程占用虚拟内存的大小(单位KB)

RSS:进程占用实际物理内存的大小(单位KB)

TTY:进程在哪个终端运行。

STAT:进程状态

START:进程开始启动的时间

TIME:进程使用的CPU(运算)时间

COMMAND:调用进程的命令

top:查看进程动态信息,实时刷新

pstree:查看进程树

控制进程:进程的启动方式

  1. 手动启动:前台启动,后台启动

2)自动启动:一次性启动,周期性

查看后台运行进程: jobs -l 显示PID号

一次性计划任务

at:一次性计划任务,一般搭配data使用

atq:列出任务表

qtrm:删除任务

以下两种格式都可

也可以不加2026-10-25,这样默认是当天执行

周期性计划任务

crontab:周期性重复执行,一般搭配which命令使用

crontab -l 查看定时任务列表

crontab -r -u username 删除用户的crontab

完整示例:

编辑crontab

crontab -e // 类似于vim

备份任务

0 2 * * * /home/user/backup.sh >> /home/user/backup.log 2>&1

清理任务

0 4 * * 0 /home/user/test/cleanup.sh

报告任务

0 9 * * 1-5 /home/user/test/report.sh

// esc + :wq 保存退出

练习1:启动apache服务和查看进程信息并输出到backup.log文件中

1)vim test.sh

2)输入以下内容

复制代码
#!/bin/bash

/etc/init.d/httpd start                       // 系统启动httpd     
systemctl start httpd
ps -aux  >> /home/qjh/test/backup.log 2>&1    //将进程信息输出到 /home/qjh/test的backup.log         
                                              // 文件中 

3)设置at时间

复制代码
at 14:20        // 设置at计划
bash test.sh    // 运行test.sh
ctrl + d        // 结束输出

4)验证进程信息是否输出

查看文件内容 cat backup.log

5)验证apache是否成功启动

练习2:每天1:00运行脚本进行备份,每周周一1:00运行脚本进行清理

1)vim crontabtest.sh

2)crontab -e

输入以下内容

复制代码
0 1 * * * /home/qjh/cr/backup.sh  #每天01:00执行backup.sh 即数据备份
0 1 * * 1 /home/qjh/cr/clean.sh   #每周周一01:00执行clean.sh 即数据清理

3.1)测试

这里为了便于测试 backup.sh 里面改为创建1.txt文件,clean.sh里面改为删除1.txt文件

backup.sh内容

clean.sh内容

3.2)因为是后台运行,所有只能分别运行

如果提示权限不够:可以chmod 0777 + 文件名,给文件执行权限

测试成功

相关推荐
茉莉玫瑰花茶3 小时前
GO [ 数据格式 ]
服务器·网络·算法·golang
欢乐的小猪3 小时前
Linux命令 chmod
linux·运维·服务器
silvamux_3 小时前
MCP 协议如何让大模型完成工具调用
大数据·服务器·elasticsearch·fastapi·vllm
guo_wen_qiang3 小时前
云服务器安装MongoDB-资源包安装
运维·服务器·mongodb
Happy_Sharing3 小时前
Windows虚拟机安装ubuntu后,如何在虚拟机Ubuntu系统中访问Windows文件夹
linux·运维·ubuntu
9144062323 小时前
安装jenkins遇到的问题总结
运维·jenkins
广州智造3 小时前
Radioss 材料本构的二次开发
运维·数据库·自动化·建模·后处理·前处理
码上有光4 小时前
Linux:信号的认识、信号的产生、信号的保存、信号的处理
android·linux·运维·信号
定栓4 小时前
Webpack迁到Vite第一节:模块系统迁移:require → import
运维·前端·webpack
小白的码BUG之路4 小时前
Jenkins -- 配置ssh
运维·ssh·jenkins