文章目录
一、PS命令—查看静态的进程统计信息
ps命令是Linux系统中最为常用的进程查看工具,主要用于显示包含挡圈运行的
各个进程完整信息的静态快照。
选项 | 解释 |
---|---|
a | 显示当前终端下所有进程信息,包含其他用户进程。与“x”选项结合时显示系统中所有进程信息 |
u | 使用以用户为主的格式输出进程信息 |
x | 显示当前用户在所有终端下的进程信息 |
-e | 显示系统内的所有进程信息 |
-l | 使用长格式显示进程信息 |
-f | 使用完整的格式显示进程信息 |
常用:
[root@localhost ~]# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.3 128164 6816 ? Ss 19:36 0:01 /usr/lib/systemd/system
root 2 0.0 0.0 0 0 ? S 19:36 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 19:36 0:00 [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S< 19:36 0:00 [kworker/0:0H]
root 7 0.0 0.0 0 0 ? S 19:36 0:00 [migration/0]
USER:启动该进程的用户账号的名称
PID :该进程在系统中的数字ID,在当前系统中是唯一的 ###kill -9 PID号
TTY :表明该进程在哪个终端上运行,“?”表示不需要终端
STAT:显示了进程当前的状态,如S(休眠)、R(运行)、Z(僵尸)、<(高优先级)、
N(低优先级)、s(父进程)、+(前台进程)、对于僵尸进程要手动关闭
START:启动该进程的时间
TIME:该进程占用的CPU时间
COMMAND:启动该进程的命令名称
%CPU:占用CPU百分比
%MEM:占用内存百分比
VSZ: 占用虚拟机内存大小(swap)
RSS: 占用物理内存的大小(物理内存)
二、动态查看进程top
能看到当前的变化,最上面可以看见CPU占用率最高的进程
ctrl+C ########终止进程
ctrl+Z ########挂起进程
三、pgrep查询进程信息
[root@localhost ~]# pgrep -l -U root -t tty1 ####查看root用户在tty1终端的进程
1543 X
四、pstree查看进程树
- 安装pstree命令
yum -y install psmisc
[root@localhost ~]# pstree -aup
-a:显示完整信息
-u:列出对应用户名
-p:列出对应PID号
五、进程控制
5.1进程的启动方式
手动启动:
- 前台启动:用户输入命令,直接执行程序
- 后台启动:在命令尾行加入“&”符号
5.2进程控制
[root@localhost ~]# cp /dev/cdrom /opt &
[1] 3249
& 手动可以看着个cp的进程
下载线网的一个镜像文件,挂起
[root@localhost ~]# wget https://dw.fjweite.cn/syt/windows_7_ultimate_x64_2020.iso
--2020-11-02 20:55:07-- https://dw.fjweite.cn/syt/windows_7_ultimate_x64_2020.iso
正在解析主机 dw.fjweite.cn (dw.fjweite.cn)... ^Z[1] 完成 cp -i /dev/cdrom /opt
Ctrl +Z 挂起
[2]+ 已停止 wget https://dw.fjweite.cn/syt/windows_7_ultimate_x64_2020.iso
[root@localhost ~]# jobs -l ##查看当前终端中后台运行的进程任务
[2]+ 3261 停止 wget https://dw.fjweite.cn/syt/windows_7_ultimate_x64_2020.iso
把挂起的进程放回前台运行:
- bg 1
将后台挂起的进程,再前台运行,用挂机中断 命令不好使了,Ctrl+Z和Ctrl+C不好用了 - fg 1
一般用这个 Ctrl+Z和Ctrl+C可以用
5.3进程终止
打开另外一个终端
su - tom ###切入tom终端
在前一个终端操作
pgrep -l -U “tom” ###查看tom运行的进程
pkill -9 -U “tom” ###强行终止tom运行的进程
pgrep -l -U “tom” ###在查看tom运行的进程
六、计划任务
6.1一次性计划任务
- 查看时间
[root@localhost ~]# date
2020年 11月 02日 星期一 21:02:38 CST
- 修改日期时间
[root@localhost ~]# date -s "2020-11-01 00:00"
2020年 11月 01日 星期日 00:00:00 CST
- 时间同步
[root@localhost ~]# ntpdate ntp1.aliyun.com
2 Nov 21:07:33 ntpdate[3415]: step time server 120.25.115.20 offset 162388.828495 sec
yum -y install at ###安装at软件
systemctl start atd ###启动atd程序
systemctl enable atd ###开机启动atd程序
[root@localhost ~]# at 21:11###创建一次性计划任务
at> pgrep -l -U ‘root’|wc -l > /opt/3.txt
at> <EOT> ###ctrl +D 提交一次计划任务
job 1 at Mon Nov 2 21:11:00 2020
atq 查看还有哪些进程没有执行
[root@localhost ~]# atq
1 Mon Nov 2 21:11:00 2020 a root
atrm 1 ####这是删除第1条计划任务
atq ####确认下删除的计划任务,
看不到了
重新做一次上面的at任务,等待它执行
6.2周期性计划任务
cat /etc/crontab #### 计划任务配置文件
crontab 常用命令
[root@localhost opt]# systemctl status crond.service ####查看计划任务程序的状态 centos 7.0以上版本
[root@localhost opt]# systemctl start crond.service ####启动计划任务程序 centos 7.0以上版本
[root@localhost opt]# systemctl stop crond.service ####停止计划任务程序 centos 7.0以上版本
service crond start ####计划任务功能要开启 ###centos 7.0以下版本
crontab -e ####添加计划任务
20 0 * * * /bin/cp /opt/1.txt /mnt ####这边命令必须是绝对路径
分 时 日 月 周 绝对命令
[root@localhost opt]# crontab -r ###清空
[root@localhost opt]# crontab -l ###查看下