QNX_LOG_DIR="/qnxlog" TOP_DIR="$QNX_LOG_DIR/top" HOGS_DIR="$QNX_LOG_DIR/hogs" PIDIN_A_DIR="$QNX_LOG_DIR/pidin" # 创建输出目录,如果不存在 mkdir -p $TOP_DIR mkdir -p $HOGS_DIR mkdir -p $PIDIN_A_DIR while true do top -b -i 1 >> $TOP_DIR/top.log hogs -i 1 >> $HOGS_DIR/hogs.log pidin a >> $PIDIN_A_DIR/pidin.log sleep 10 done在这个脚本的基础上 每个文件夹可以生成两个文件,删除旧的 生成新的
时间: 2024-03-18 22:42:37 浏览: 66
Qnx425.rar_qnx_qnx425_tcp qnx
5星 · 资源好评率100%
可以在脚本中添加如下代码来实现上述功能:
```bash
# 检查输出目录中的文件数量,如果超过2个,则删除时间早的文件
if [[ $(ls -1q $TOP_DIR | wc -l) -gt 2 ]]; then
rm -f $(ls -1 $TOP_DIR | head -n 1)
fi
if [[ $(ls -1q $HOGS_DIR | wc -l) -gt 2 ]]; then
rm -f $(ls -1 $HOGS_DIR | head -n 1)
fi
if [[ $(ls -1q $PIDIN_A_DIR | wc -l) -gt 2 ]]; then
rm -f $(ls -1 $PIDIN_A_DIR | head -n 1)
fi
# 检查当前文件名后缀,生成新的文件名
if [[ -f $TOP_DIR/top1.log ]]; then
mv $TOP_DIR/top1.log $TOP_DIR/top2.log
fi
if [[ -f $HOGS_DIR/hogs1.log ]]; then
mv $HOGS_DIR/hogs1.log $HOGS_DIR/hogs2.log
fi
if [[ -f $PIDIN_A_DIR/pidin1.log ]]; then
mv $PIDIN_A_DIR/pidin1.log $PIDIN_A_DIR/pidin2.log
fi
# 输出数据到日志文件
top -b -i 1 >> $TOP_DIR/top1.log
hogs -i 1 >> $HOGS_DIR/hogs1.log
pidin a >> $PIDIN_A_DIR/pidin1.log
# 等待一段时间
sleep 10
```
这段代码中,首先检查输出目录中的文件数量,如果超过2个,则删除时间早的文件。然后检查当前文件名后缀,如果存在以“1”结尾的文件,则生成以“2”结尾的文件。最后输出数据到日志文件,并等待一段时间。这样就可以确保每个输出文件夹都最多只会保存两个文件,并且不会占用过多的磁盘空间。
阅读全文