Liv*_*Com 3 unix linux shell cron
我试图使用以下命令每 5 分钟重定向特定文件中的 TOP 命令输出。
top -b -n 1 > /var/tmp/TOP_USAGE.csv.$(date +"%I-%M-%p_%d-%m-%Y")
-rw-r--r-- 1 root root 0 Dec 9 17:20 TOP_USAGE.csv.05-20-PM_09-12-2015
-rw-r--r-- 1 root root 0 Dec 9 17:25 TOP_USAGE.csv.05-25-PM_09-12-2015
-rw-r--r-- 1 root root 0 Dec 9 17:30 TOP_USAGE.csv.05-30-PM_09-12-2015
-rw-r--r-- 1 root root 0 Dec 9 17:35 TOP_USAGE.csv.05-35-PM_09-12-2015
Run Code Online (Sandbox Code Playgroud)
因此我为此制作了一个非常小的(1 行)shell 脚本,这样我就可以通过 cronjob 每 5 分钟运行一次。
问题是,当我手动运行此脚本时,我可以看到文件中的输出,但是当此脚本自动运行时,文件每 5 分钟生成一次,但没有数据(又称文件为空)
有人可以帮我解决这个问题吗?
我现在修改了脚本,但仍然是一样的。
#!/bin/sh
PATH=$(/usr/bin/getconf PATH)
/usr/bin/top -b -n 1 > /var/tmp/TOP_USAGE.csv.$(date +"%I-%M-%p_%d-%m-%Y")
Run Code Online (Sandbox Code Playgroud)
小智 7
我遇到了和你一样的问题。
必须添加带有 -b 选项的 top 命令。在使用之前将 top 输出保存到变量中。
脚本如下
日期 >> /tmp/mysql-mem-moniter.log
内存=/usr/bin/top -b -n 1 -u mysql
回声“$MEM”| grep mysql >> /tmp/mysql-mem-moniter.log
| 归档时间: |
|
| 查看次数: |
2094 次 |
| 最近记录: |