top 命令查看进程

来源:6-5 函数库

qq_难得自在_0

2023-05-31

老师,你好,我自学top命令时发现一个问题
top 是查看系统实时进程的 我用的ubuntu的版本,top默认是3秒刷新一次
top -d 5 是设置成5秒刷新一次

但还是当我写成bash脚本
#!/bin/bash
date
top -d 5 -n 1 -b > t1.txt
date

不是应该差5秒吗?

但是结果不是,同一秒内完成的???

写回答

1回答

酷田

2023-06-05

你这么写参数是自相矛盾的,比如-d 5代表每5秒刷新一次,但是-n 5代表一共刷新5次,你这里-n 指定1,那么就就只会刷新一次了。

你需要修改成top -d 5 -n 5 -b,这样才能实现5次输出,但一共需要耗费20秒

#!/bin/bash

date

top -d 5 -n 5 -b > t1.txt

date


其实你的本意应该是想每个5秒执行一次top命令,并且保存到t2.txt文件内,那么建议实现如下

#!/bin/bash


count=1


while [ $count -le 5 ]

do

date

top -b -n 1 >> t2.txt

count=`expr $count + 1`

sleep 5

done


1
0

掌握Shell脚本编程 360架构师带你进阶Linux高手

30%知识讲解+70%实例操作 掌握Shell脚本编程能力

1638 学习 · 297 问题

查看课程